c语言a==b==c跟a==b&&b==c的区别

如题所述

首先,你如果真的在做编程的话,建议千万不要采用第一种方式,不管是哪门语言都一样,因为它计算 a==b 时,得出 一个逻辑值0或者1 ,然后再用这个逻辑值去与C比较,那肯定是不对的,而第二个式子,先计算 A==B 得出一个逻辑值0或者1 ,再去计算B==C,也得出一个逻辑值0或者1 ,然后比较前后两个式子的逻辑值,因为是用与计算,所以,只有当前后两个式子同时为1时才为1,否则均为0 举个例子,设ABC均为0,那么对于A==B==C来说,先计算A==B,答案为1,然后1==C,即1==0,答案为假,即最后答案为0而对于A==B&&B==C来说,A==B,0==0,正确即为1,接着计算 B==C,即 0==0,答案正确即为1,最后计算 1==1,答案正确,即为1,所以最后答案 为 1,明白了吗,但千万不要用 A==B==C这种式子来编程哦,切记!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-29
a==b==c 先判断a==b,,再把结果和c比较:例如:int a,b,c;
a=2;b=2;c=1;
if (a==b==c) 条件为真;a=2;b=2;c=2;
if (a==b==c) 条件为假;a==b&&b==c 表示要a=b 并且b=c时条件为真
相似回答