c语言中逻辑运算符优先级是什么?
c语言中逻辑运算符优先级由高到低依次是:!(逻辑非)、& & (逻辑与)、||(逻辑或)。逻辑表达式的值为逻辑值;逻辑值分为逻辑真值和逻辑假值,在判断时,仅有零值被判断为逻辑假值(false),一切非零值均可被判断为逻辑真值(true)。
C 语言提供了以下三种逻辑运算符。
一元:!(逻辑非)。 二元:& & (逻辑与)、||(逻辑或)。
以上三种逻辑运算符中,逻辑非 ! 的优先级最高,逻辑与 & & 次之,逻辑或 || 优先级最低。
逻辑表达式的值为逻辑值,即布尔型(bool),该类型为 C99 新增的,一些编译器可能还不支持该类型。
逻辑值分为逻辑真值和逻辑假值。一般情况下,在判断时,仅有零值被判断为逻辑假值(false),一切非零值均可被判断为逻辑真值(true);在存储和表示时,通常,使用 1 表示逻辑真值,0表示逻辑假值。
逻辑与 & & 运算符的运算规则:只有两个操作数均为逻辑真时,结果才为真。其余情况,结果均为假。
逻辑或 || 运算符的运算规则:只有两个操作数均为逻辑假时,结果才为假。其余情况,结果均为真。
@H_406_25@int a=3,b=5;则有:
!a:由于 a 非零,为真,!a 为假,其值为 0。
a||b:由于 a 和 b 均非零,均为真,故逻辑或的结果为真,其值为 1。
a& & b:由于 a 和 b 均非零,均为真,故逻辑与的结果为真,其值为 1。
!a||b& & 2:由于逻辑非 ! 优先级最高,首先与 a 结合,而 & & 优先级高于 ||,相当于(!a)||(b& & 2), 即 0||1 为真,其值为 1。
逻辑与 & & 、逻辑或 || 均有“短路”特性:
逻辑与& & “短路”:当逻辑与& & 的左操作数为逻辑假时,就足以判断该逻辑运算的结果为假了,故右操作数就不再被执行。
逻辑或||“短路”:当逻辑或||的左操作数为逻辑真时,就足以判断该逻辑运算的结果为真了,故右操作数就不再被执行。
推荐教程:《C语言》
以上就是c语言中逻辑运算符优先级是什么?的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: c语言中逻辑运算符优先级是什么?
本文地址: https://pptw.com/jishu/594450.html