目录
这次的内容简单易懂所以我们一次性说说两个运算符,今天两个也十分好理解。
1.关系运算符
假设变量a的值为10,变量b的值为20,则:
运算符 | 描述 | 实例 |
== | 检查两个操作数的值是否相等,如果相等则条件为真 | (a==b)不为真 |
!= | 检查两个操作数的值是否相等,如果不相等则条件为真 | (a!=b)为真 |
> | 检查左操作数的值是否大于右操作数的值,如果是则条件为真 | (a>b)不为真 |
< | 检查左操作数的值是否小于右操作数的值,如果是则条件为真 | (a<b)为真 |
>= | 检查左操作数的值是否大于等于右操作数的值,如果是则条件为真 | (a>=b)不为真 |
<= | 检查左操作数的值是否小于等于右操作数的值,如果是则条件为真 | (a<=b)为真 |
是真是假由于是bool类型,所以真(1),假(0).
#include<iostream>
using namespace std;
int main()
{
cout<< (a==b)<<endl; //0
cout<<(a!=b) <<endl; //1
cout<< (a>b)<<endl; //0
cout<< (a<b)<<endl; //1
cout<< (a>=b)<<endl; //0
cout<< (a<=b)<<endl; //1
return 0;
}
代码在上方感兴趣的可以自行验证,文中的()的作用就是优先级更高,优先算()里的式子。
2.赋值运算符
假设变量a的值为10,变量b的值为20,变量c的值为a+b,则:
表一
运算符 | 描述 | 实例 |
= | 简单的赋值运算符,把右边操作数的值赋给左边操作数 | c=a+b将把a+b的值赋给c |
+= | 加且赋值运算符,把右边操作数加上左边的操作数的结果赋给左边操作数 | c+=a相当于c=c+a |
-= | 减且赋值运算符,把左边操作数减去左边的操作数的结果赋给左边操作数 | c-=a相当于c=c-a |
*= | 乘且赋值运算符,把右边操作数乘上左边的操作数的结果赋给左边操作数 | c*=a相当于c=c*a |
/= | 除且赋值运算符,把左边操作数除以左边的操作数的结果赋给左边操作数 | c/=a相当于c=c/a |
%= | 求模且赋值运算符,两个操作数的模的结果赋给左边操作数 | c%=a相当于c=c%a |
表二
运算符 | 描述 | 实例 |
<<= | 左移且赋值运算符 | c<<=2等同于c=c<<2 |
>>= | 右移且赋值运算符 | c>>=2等同于c=c>>2 |
&= | 按位与且赋值运算符 | c&=2等同于c=c&2 |
^= | 按位异或且赋值运算符 | c^=2等同于c=c^2 |
|= | 按位或且赋值运算符 | c|=2等同于c=c|2 |
#include<iostream>
using namespace std;
int main()
{
int c=a+b;
cout<<c<<endl;
c+=a;
cout<<c<<endl;
c-=a;
cout<<c<<endl;
c*=a;
cout<<c<<endl;
c/=a;
cout<<c<<endl;
c%=a;
cout<<c<<endl;
c<<=a;
cout<<c<<endl;
c>>=a;
cout<<c<<endl;
c&=a;
cout<<c<<endl;
c|=a;
cout<<c<<endl;
c^=a;
cout<<c<<endl;
return 0;
}
上面是代码,感兴趣的可以试一试。
小提示:
🆗到这里想必你也看完了前面的内容,那么你有没有发现表二好像不是很好理解呢。这是因为表二涉及到我们下一篇要说的位运算符(&,^,|,<<,>>),主要是下一篇不太好理解,只能分开说,但是并不妨碍你们理解赋值运算符,等你们看完下一篇自然就会明白表二。