一·逻辑运算符与逻辑表达式 1·逻辑运算符用于判断表达式的真假,其结果为“真”或“假”。C语言中的逻辑运算符及其含义与用法,如图所示
例如
结果为? 通过编译结果,如图所示:
结果为1。因为“||”表示或者,有一个是正确的 就为1,全部错误则为0。
结果分别为0,1,0,因为“&&”表示并且,所以有一个错误,则为0,全对才为1。
逻辑运算符中的“!”运算符是单目运算符,只操作一个变量,对变量进行取反,,而“&&”运算符和“||”运算符为双目运算符,操作两个变量。 由逻辑运算符连接起来的表达式称为逻辑表达式,示例如下。
int a = 0, b = 20,c = 0;
!a //结果为假,即值为0
a && b //a和b都为真,结果为真,即值为1
b || c //结果为真,即值为1
!a && b //结果为假,即值为0
!a || b //结果为真,即值为1
逻辑运算符的优先级“!”>“&&”>“||”。表达式“!a&&b”的计算顺序:先计算!a,结果0;然后计算0&&b,结果为0。表达式“!a||b”的计算顺序:先计算!a,结果为0;然后计算0||b,因为b为真,所以结果为1。
短路:
&&:如果左边为假,则右边不求值
||:如果左边为真,则右边不求值
范例:
!a:如果a为假,则!a为真;如果a为真,则!a为假
a&&b:只有a和b都为真时,结果才为真;只要a和b中有一个为假,结果为假
a || b:只有a和b都为假时,结果才为假;只要a和b中有一个为真,结果为真
!取反: