这条语句应该怎样理解呢?
int x,y,a,b;
x=y=b=0;
if(x=y) a=b; else a=!b;
红色部分的应该怎样来理解?
为什么 值会是假?
[解决办法]
x=y=b=0;
if(x=y)
---------------
()里面的是赋值符号,不是比较符号(==)
x=y=0,所以()里面的值就是0,0就是假
[解决办法]
if(x=y)
将y赋给x并对x进行真假判断
真假判断:x为0和x为非0
if(x=y) //x为非9
a=b;
else //x为0
a=!b;