C语言中,如果要判断两个数是否同时为1,能不能用连等表达式?

问题描述:

C语言中,如果要判断两个数是否同时为1,能不能用连等表达式?
要判断a和b是否同时为1,能不能写成if (a == b == 1)
还是只能写成if (a == b && a == 1)
1个回答 分类:综合 2014-09-21

问题解答:

我来补答
上面的不行,逻辑判断连续来语法上是没有问题的,但是得不到想要的结果,
道理应该很简单,如a == b == 1这个,运算顺序是先运算a == b返回值是0或者1,再让这个0或者1和这个后面的表达式运算,也就是0或者1和后面的1运算,
0==1或者1==1来做
所以说语法上没有问题,但是结果不一定是你想要的
如果ab都为2,那么a==b返回1,和1运算,那么返回1,但是ab是2,但不是1,可是返回1,是正确的
明白没?
 
 
展开全文阅读
剩余:2000
上一页:14,16
下一页:对一下