你如何评估z=x–==y+1;
鉴于
int w = 1;
int x = 6;
int y = 5;
int z = 0;
z = !z || !x && !y;
printf("%dn", z);
z = x-- == y + 1;
printf("%dn", z);
如果 x-- 是 5 并且 y+1 是 6,有人可以解释下面的行将如何评估为 1 吗?
z = x-- == y + 1;
回答
表达式的x--计算结果为递减x 之前的值。
Sox-- == y + 1与6 == 5 + 1which is true相同,则将值 1 分配给z。