算数运算符:+ - * / %
+,-,*,不说了,注意类型转换就行
/:仅是取商,如果是int /int的话,会只保留整数,想算出来小数,需要提前转换为double或者强制转换。
%:称取模运算(又称取余运算)
自增,自减运算符:++ --
i++:先调用i,再实现i=i+1;
++i:先i=i+1,再调用自增之后的i;
代码实现:
//有关自增自减的操作
cout<<"有关自增自减的操作"<<endl;
int a4=10;
cout<<a4++<<endl;
cout<<a4<<endl;
int b4=10;
cout<<++b4<<endl;
cout<<b4<<endl;
逻辑运算符:与或非,异或
与:&&
或:||
非:!
异或:^
三元运算符:?
先写判断条件,?左侧是判断条件为正确的执行结果,右侧是错误的执行结果。
注意:与和或如果是两个符号,有短路功能,即判断前一个条件即可确定结果时,不会进行之后的判断。但是& 和|则没有短路功能(java有这个功能,不确定C++有没有,一般建议不要用)
关系运算符:
都是两个符号连着
==:判断相等
>=:判断左面是否大于右面
赋值运算符:
=:i=1;
+=:
i+=1等效于i=i+1;
类似的,-=,/=,*=,%=一样,都是先看等于,再把等于左侧的符号移到等式右边来。
注意:=与==的区别:
一个是赋值运算符,一个是关系运算符。
==返回的是布尔值,=仅代表赋值操作。
关于运算符的优先级:
不用刻意去背
基本上就是逻辑判断在运算的后面,注意一下自增运算符就好,如果是++i的形式,则先进行逻辑判断在运算就行,还要注意&&有短路现象,可能++i无法实现自增。
括号优先级最高。