运算次序
int a=10, b=20, x=2, y=1, z=0;
t = !z&&x==y==z;
cout < < "t= " < <t < <endl;
输出结果是t=1
t为什么等于1?
[解决办法]
t = !z&&x==y==z;
分解成
t = (!z) && ((x==y) == z)
(x==y)为false, 表达式值为0
不用再多说了吧...
发布时间: 2012-03-14 12:01:13 作者: rapoo
运算次序
int a=10, b=20, x=2, y=1, z=0;
t = !z&&x==y==z;
cout < < "t= " < <t < <endl;
输出结果是t=1
t为什么等于1?
[解决办法]
t = !z&&x==y==z;
分解成
t = (!z) && ((x==y) == z)
(x==y)为false, 表达式值为0
不用再多说了吧...