main() { int x=1,y=2,z=3; if(x--)y++,z++; else y--,z--; } 中if(x--)是什么意思

如题所述

自增和自减运算符,在操作数前面的会等整个表达式的值,在后面的,会与原来的值相等,如
int x=1,y=2,z=3;
++x x等于2,++x也等于2 ,先自增后使用
x++ x等于2,x++等于1,先使用后自增

希望回答对你有帮助
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-29
问题中的if(x--)可以等价于if(x) 和x=x-1这两部分
先取X中的值 在对X进行自减操作
由于x=1 所以if(1)为真 执行y++和z++
最终x=0 y=3 z=4本回答被提问者采纳
第2个回答  2011-07-30
if(x--)就是说看看x的值是否为0或者非零,if里面的条件如果是算数表达式的话,就看算术表达式是否为0,0则不执行if下面的语句,非零的就执行
第3个回答  2011-07-29
if(x--)就是先调用x的值1,然后x-1=0,即if(1),y++,z++; 执行完成后,x=0,y=3,z=4
else没用
第4个回答  2011-07-30
因为if语句当里面的值等于0时就不会执行。
相似回答