问题描述:
答案是x=1,y=0,z=0.我对这个答案不明白.我总觉的x与y的值都应该是0
问题解答:
首先,你需要知道x++的概念,它是先取值后计算,那好,我们来看下面
z = x++&&y++;
这个表达式会先计算x++的值,关键在此,先取得x的值为0,然后再将x+1,由于与运算必须两个操作数都为true,如果其一为false或者0,那么与运算就不进行下去了,也就是说程序并没有执行y++这里,所有才有x=1,y=0,z=0的结果
我觉得..不太合理..
题中&&为关键,你得看看相关书,&&有特别的地方.&&前面的为0,后面的东西就不执行了.这就是为什么X加了1而y不加1的道理.当然发现了x为0,那么表达式自然为假,z为0.之后x自加1,x=1.
guoqiang721029 说的很明白了