关系运算符
> 大于
>= 大于或等于(不小于)
< 小于
<= 小于或等于(不大于)
== 相等
!= 不相等
关系表达式成立时,为“真”,表达式的值为1;不成立时,为“假”,值为0。
逻辑运算符
一个数据非0值代表“真”,整数0代表“假”。
&& 逻辑与:参与运算的两个值都为“真”,结果为“真”;只要有一个“假”,结果都为“假”。
|| 逻辑或:参与运算的两个值只要有一个“真”,结果为“真”;两个值都为“假”,结果为“假”。
! 逻辑非:“真”值的逻辑非为“假”,“假”值的逻辑非为“真”。
逻辑表达式的短路
一个逻辑表达式已经达成判断“真”或“假”的条件后,不会继续计算之后的表达式。
int a=1,b=2;
a>b&&a=b;
printf("%d",a);
a<b||b=a;
printf("%d",b);
输出:
1 //因为a>b为“假”,整个逻辑表达式已经为“假”,所以不计算后面的a=b
2 //因为a<b为“真”,整个逻辑表达式已经为“真”,所有不计算后面的b=a