【摘要】:表3.3.3C++逻辑操作符逻辑操作符的操作数是结果为布尔类型的表达式,一般用于跟关系操作符复合组成复杂的逻辑表达式。动手写3.3.3动手写3.3.3展示了逻辑操作符对确定的布尔值进行操作的各种可能的结果。运行结果如图3.3.5所示:图3.3.5短路求值示例运行结果我们可以看到,由于逻辑操作符“||”左边是true,即使右边的赋值表达式没有执行,最后打印出来的a的值依然是初始值1。
逻辑操作符包含了基本的逻辑与、逻辑或、逻辑非3种操作,逻辑与和逻辑或都是二元操作符,而逻辑非为一元操作符。具体如表3.3.3所示。
表3.3.3 C++逻辑操作符
逻辑操作符的操作数是结果为布尔类型的表达式,一般用于跟关系操作符复合组成复杂的逻辑表达式。当然其他类型也可以作为操作数转化为true和false,或者是1和0,但是在表达式中使用非1、非0的数值并不是恰当的做法。
动手写3.3.3
动手写3.3.3展示了逻辑操作符对确定的布尔值进行操作的各种可能的结果。运行结果如图
3.3.3所示:
图3.3.3 逻辑操作符示例运行结果
动手写3.3.4
(www.xing528.com)
动手写3.3.4进行了进一步扩展,展示了实际编程中逻辑操作符与关系操作符的组合使用。由于逻辑比较复杂,初学者需要理顺两种操作符的规则后才能明白。运行结果如图3.3.4所示:
图3.3.4 逻辑操作符和关系操作符组合使用的运行结果
提示
由于逻辑与在一个操作数为false的情况下即为false,而逻辑或在一个操作数为true的情况下即为true,对于类似“ (a<b) || (c<d) ”这样的表达式,只要a<b已经为true,那么右边的c<d也不需要计算了。这种逻辑运算符的求值策略叫作短路求值。
动手写3.3.5
动手写3.3.5展示了短路求值。运行结果如图3.3.5所示:
图3.3.5 短路求值示例运行结果
我们可以看到,由于逻辑操作符“||”左边是true,即使右边的赋值表达式没有执行,最后打印出来的a的值依然是初始值1。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。