//可以使用bool、true、false
逻辑运算低于比较运算符
-
!作“非”运算 只有一个算子,算单目运算符
-
&&作“与”运 就是交集
-
||作“或”运算 就是并集
优先级:!>&&>||
优先级 | 运算符 | 结合性 |
---|---|---|
1 | () | → |
2 | ! + - ++ -- | ←(单目的+和-) |
3 | * / % | → |
4 | + - | → |
5 | < <= > >= | → |
6 | == != | → |
7 | && | → |
8 | || | → |
9 | = += -= *= /= %= | ← |
对于条件a == 6 && b += 1来说,如果左边是false,那么不做右边(用在if等句);
如果对于条件a == 6 || b += 1来说,如果左边是true,那么不做右边。这是短路
条件运算符
优先级高于赋值,但是低于其他所有运算符,且是自右向左。
count = (count > 20) ? count - 10 : count + 10
//相当于
if ( count > 20)
count = count - 10;
else
count = count + 10;
逗号运算 ,
优先级是最低的,且组合关系是自左向右;
连接两个表达式,左边的表达式会先计算,右边的表达式留下来作为结果;
现阶段主要用作for语句中的运算;
int i;
i = 3+4,5+6;
//i=11
for(i=0,j=10;i<j;i++,j--);