前一节我们初步认识出c++是一门面向对象的程序设计语言,并且我们初步认识了变量,数据类型,常量,输入输出以及合法的标识符命名规则,接下来我们要学习的是运算符。
在c++中有逻辑运算符,赋值运算符,算数运算符,位运算符,关系运算符和杂项运算符。
先从简单的算数运算符开始讲起,算数运算符简单来说就是数学中的加减乘除取模运算还加了前置后置运算,下面举个例子。
#include <iostream>
using namespace std;
int main()
{
int a=10;
int b=5;
int ret=0;
//定义各种运算
ret=a+b;
ret=a-b;
ret=a*b;
ret=a/b;
ret=a%b; //取模运算的两个数必须是整数不能是其他类型的数字运算结果为0
//自增和自减
int c=5;
int d=0;
d=++c; //这是前置加加
d=--c; //这是前置减减
d=c++; //这是后置加加
d=c--; //这是后置减减
return 0;
}
对于加减乘除这些好理解,前置后置不好理解,通俗讲就是符号在前先运算,前置加加就是先加在运算,其余可对比理解。
#include <iostream>
using namespace std;
int mian()
{
int a=5;
int b=a++;
//上面两段代码可以写成 b=a a=a+1 输出结果是b=5 a=6
int c=++a; //a=a+1 c=a 输出结果为c=6 a=6
return 0;
}
关系运算符,简单来说就是判断两个数字或条件的关系。在if语句中判断条件一定是两个等号,一个等号是赋值的意思这点需要注意。
赋值运算符
逻辑运算符
杂项运算符
在这里只介绍三元运算符和sizeof。三元运算符相当于简化版的if-else语句,用它解决对应问题比较方便。对于sizeof它是计算变量所占内存的大小,比如用int创建的变量sizeof计算的结果就是4,因为int占四个字节。
#include <iostream>
using namespace std;
int main()
{
int a = 10;
//这两种写法都是正确的
cout << sizeof(int);
cout << sizeof(a);
return 0;
}
#include <iostream>
using namespace std;
int main()
{
//比较两个数的大小
int a=10;
int b=20;
bool b1=a>b?true:false; //问号前面是判断条件
//如果为真返回true否则返回false
return 0;
}
位运算符是不好理解的,其中的位是指二进制的位,位运算其实是对二进制位进行运算。理解位运算之前先要理解数字在内存中的存储方式,对于正数来说计算机存的是它的补码,对于负数来说最高位是符号位,1表示负数,0表示正数,负数也是存的补码,对于原码反码补码介绍看下面的例子。
位运算有异或^ 按位或& 按位与| 取反~它们都是对二进制位进行运算
这次我们学习了相关的运算符,如有错误或补充请提出。