一、变量与数据类型
1、C++变量定义和数据类型
#include <iostream> int main() { //定义整型变量a和b int a, b; //定义字符型变量c,并赋值 char c = 'A'; //定义浮点型变量pi,并赋值 float pi = 3.14; //定义双精度浮点型变量e,并赋值 double e = 2.71828; //输出变量值 std::cout << "a的值为:" << a << std::endl; std::cout << "b的值为:" << b << std::endl; std::cout << "c的值为:" << c << std::endl; std::cout << "pi的值为:" << pi << std::endl; std::cout << "e的值为:" << e << std::endl; return 0; }
2、C++数据类型转换
#include <iostream> int main() { int a = 10; //强制类型转换 double b = (double)a; std::cout << "a的值为:" << a << std::endl; std::cout << "b的值为:" << b << std::endl; return 0; }
3、C++常量定义
#include <iostream> #define PI 3.14159 int main() { //输出π std::cout << "π的值为:" << PI << std::endl; return 0; }
二、运算符
1、算术运算符
#include <iostream> int main() { int a = 10, b = 3; std::cout << "a + b = " << a + b << std::endl; std::cout << "a - b = " << a - b << std::endl; std::cout << "a * b = " << a * b << std::endl; std::cout << "a / b = " << a / b << std::endl; std::cout << "a % b = " << a % b << std::endl; //取模运算 return 0; }
2、关系运算符
#include <iostream> int main() { int a = 10, b = 3; std::cout < b :" < b) << std::endl; std::cout << "a < b :" << (a < b) << std::endl; std::cout <= b :" <= b) << std::endl; std::cout << "a <= b :" << (a <= b) << std::endl; std::cout << "a == b :" << (a == b) << std::endl; std::cout << "a != b :" << (a != b) << std::endl; return 0; }
3、逻辑运算符
#include <iostream> int main() { int a = 10, b = 3; std::cout < b) :" < b) << std::endl; std::cout < b) && (a < 20) :" < b) && (a < 20)) << std::endl; std::cout << "(a < b) || (a < 20) :" << ((a < b) || (a < 20)) << std::endl; return 0; }
三、控制语句
1、if语句
#include <iostream> int main() { int a = 10, b = 3; if(a > b) { std::cout << "a大于b" << std::endl; } else { std::cout << "a小于等于b" << std::endl; } return 0; }
2、switch语句
#include <iostream> int main() { int a = 2; switch(a) { case 0: std::cout << "a等于0" << std::endl; break; case 1: std::cout << "a等于1" << std::endl; break; case 2: std::cout << "a等于2" << std::endl; break; default: std::cout << "a的值不在0、1、2中" << std::endl; } return 0; }
3、for循环
#include <iostream> int main() { for(int i = 0; i < 5; i++) { std::cout << "i的值为:" << i << std::endl; } return 0; }
4、while循环
#include <iostream> int main() { int i = 0; while(i < 5) { std::cout << "i的值为:" << i << std::endl; i++; } return 0; }
四、函数
1、函数定义
#include <iostream> //函数声明 int max(int a, int b); int main() { int a = 10, b = 3; std::cout << "a和b中的最大值为:" << max(a, b) < b ? a : b; }
2、函数重载
#include <iostream> int max(int a, int b); double max(double a, double b); int main() { int a = 10, b = 3; double c = 3.14, d = 2.718; std::cout << "a和b中的最大值为:" << max(a, b) << std::endl; std::cout << "c和d中的最大值为:" << max(c, d) < b ? a : b; } double max(double a, double b) { return a > b ? a : b; }
3、函数指针
#include <iostream> //函数声明 int max(int a, int b); int main() { //函数指针 int (*p)(int, int) = max; int a = 10, b = 3; std::cout << "a和b中的最大值为:" << (*p)(a, b) < b ? a : b; }
五、数组与指针
1、一维数组
#include <iostream> int main() { int arr[5] = {1, 3, 5, 7, 9}; //遍历数组中的数据 for(int i = 0; i < 5; i++) { std::cout << "arr[" << i << "] = " << arr[i] << std::endl; } return 0; }
2、二维数组
#include <iostream> int main() { int arr[2][3] = {{1, 2, 3}, {4, 5, 6}}; //遍历数组中的数据 for(int i = 0; i < 2; i++) { for(int j = 0; j < 3; j++) { std::cout << "arr[" << i << "][" << j << "] = " << arr[i][j] << std::endl; } } return 0; }
3、指针
#include <iostream> int main() { int a = 10; int *p = &a; std::cout << "p指针指向的值为:" << *p << std::endl; return 0; }
六、类和对象
1、类和对象的定义
#include <iostream> //类的定义 class Student { public: void setName(std::string name); std::string getName(); void setAge(int age); int getAge(); private: std::string m_name; int m_age; }; //类的实现 void Student::setName(std::string name) { m_name = name; } std::string Student::getName() { return m_name; } void Student::setAge(int age) { m_age = age; } int Student::getAge() { return m_age; } int main() { //对象的使用 Student stu; stu.setName("小明"); stu.setAge(20); std::cout << stu.getName() << "今年" << stu.getAge() << "岁。" << std::endl; return 0; }
2、构造函数和析构函数
#include <iostream> class Student { public: //构造函数 Student(std::string name, int age); //析构函数 ~Student(); void setName(std::string name); std::string getName(); void setAge(int age); int getAge(); private: std::string m_name; int m_age; }; //构造函数的实现 Student::Student(std::string name, int age) { m_name = name; m_age = age; std::cout << "构造函数被调用" << std::endl; } //析构函数的实现 Student::~Student() { std::cout << "析构函数被调用" << std::endl; } void Student::setName(std::string name) { m_name = name; } std::string Student::getName() { return m_name; } void Student::setAge(int age) { m_age = age; } int Student::getAge() { return m_age; } int main() { Student stu("小明", 20); std::cout << stu.getName() << "今年" << stu.getAge() << "岁。" << std::endl; return 0; }
3、成员函数的访问控制
#include <iostream> class Student { public: void setName(std::string name); std::string getName(); void setAge(int age); int getAge(); void study(); private: std::string m_name; int m_age; }; void Student::setName(std::string name) { m_name = name; } std::string Student::getName() { return m_name; } void Student::setAge(int age) { m_age = age; } int Student::getAge() { return m_age; } void Student::study() { std::cout << m_name << "正在学习" << std::endl; } int main() { Student stu; stu.setName("小明"); stu.setAge(20); stu.study(); return 0; }
七、异常
1、抛出异常
#include <iostream> int divide(int a, int b) { if(b == 0) { //抛出异常 throw "除数不能为0"; } return a / b; } int main() { int a = 10, b = 0; try { int c = divide(a, b); std::cout << "a / b = " << c << std::endl; } catch(const char *e) { std::cout << "异常信息:" << e << std::endl; } return 0; }
2、捕获异常
#include <iostream> int divide(int a, int b) { if(b == 0) { throw "除数不能为0"; } return a / b; } int main() { int a = 10, b = 0; try { int c = divide(a, b); std::cout << "a / b = " << c << std::endl; } catch(const char *e) { std::cout << "异常信息:" << e << std::endl; } catch(...) { std::cout << "未知异常" << std::endl; } return 0; }
原创文章,作者:IYCZ,如若转载,请注明出处:https://www.506064.com/n/145815.html