C语言中供了三种逻辑运算符:
&&:逻辑与,读作并且
也就是说,用&&符号组成的表达式,必须左边和右边都满足,如果都满足,则运算式结果为真,否则为假
口诀:一假则假
||:逻辑或,读作或者
也就是说,用||符号组成的表达式,左边或者右边有一个满足就行,有一个为真,那么结果就位真,否则为假
口诀:一真则真
!:逻辑非,读作取反
取反。
口诀:真变假,假变真
C语言中没有BOOL类型
一切以0为假,非0为真
注意:逻辑运算式的结果只是1或者0,分别代表真或者假
但是,逻辑运算式的时候,用一切非0得值代表真
运算优先级:
复赋值运算符 < 逻辑与 和 逻辑或 < 关系运算符 < 算数运算符 < 逻辑非(!)
断路的问题:
&&:逻辑与,读作并且
也就是说,用&&符号组成的表达式,必须左边和右边都满足,如果都满足,则运算式结果为真,否则为假
口诀:一假则假
||:逻辑或,读作或者
也就是说,用||符号组成的表达式,左边或者右边有一个满足就行,有一个为真,那么结果就位真,否则为假
口诀:一真则真
!:逻辑非,读作取反
取反。
口诀:真变假,假变真
C语言中没有BOOL类型
一切以0为假,非0为真
注意:逻辑运算式的结果只是1或者0,分别代表真或者假
但是,逻辑运算式的时候,用一切非0得值代表真
运算优先级:
复赋值运算符 < 逻辑与 和 逻辑或 < 关系运算符 < 算数运算符 < 逻辑非(!)
断路的问题:
1.因为逻辑与是一假则假,所以如果左边为假,那么右边的表达式不会被执行
2.因为逻辑或是一真则真,所以如果为真,那么右边的表达式不会被执行
逻辑表达式
逻辑表达式的一般形式为:
表达式 逻辑运算符 表达式
其中的表达式可以又是逻辑表达式,从而组成了嵌套的情形。例如:
(a&&b)&&c
根据逻辑运算符的左结合性,上式也可写为:
a&&b&&c 逻辑表达式的值是式中各种逻辑运算的最后值,以“1”和“0”分别代表“真”和“假”