搜索

C++中设整型变量m、n、b、a、c、d的值均为一,(m=a>b)&&(n=c>b),为什...

发布网友 发布时间:2024-10-24 07:21

我来回答

3个回答

热心网友 时间:2024-11-05 20:42

&&运算符的特点是,当左值和右值中有一个为假,则整个&&表达式的值为假,
而且&&是左结合的,也就是从左向右运算,
所以一旦左边的表达式为假,则整个&&表达式的值为假,不会再处理右表达式,
这个也叫做&&短路。

m、n、b、a、c、d的值均为一,所以a>b为假,m=a>b=0,所以不会再处理右表达式n=c>b,
所以n的值不变

热心网友 时间:2024-11-05 20:43

一楼说的对

热心网友 时间:2024-11-05 20:44

m = a > b;
m将接受a > b返回的bool值(0假1真),由于a = b = 1,所以a > b返回0,所有m = 0
对于&&运算符,只有当左表达式为真,才执行&&的右表达式
因为m = 0,左表达式求值后为假(m = 0),则右表达式不执行,n仍是1
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top