1. (x=a) 运算后,x=3,表达式的值也是32. !(x=a) <==> !3 = 0----3. (y=b) 运算后,y=4,表达式的值也是4----4. !3&&4&&0 <==> 0&&4&&0 <==> 0&&0 <==> 0 (&&, 且运算,遇0得0)----a,b,c不变。还是3,4, 5
我加了这么一句printf("%d\n",y);结果y的值不是4可以得出先算!(x=a)此处为假,则不再继续往下做y=b&&0了