
像这样的xyz,怎么看,++,&&,||知道意思,但是输出为什么不一样
这种你理解了就很简单了
A&&B 从左到右 一个一个算,如果A为0, B就不算了。如果A为1继续算B
A||B 从左到右 一个一个算,如果A为1, B就不用了。如果A为0继续算B
例子1
x=y=z=-1
++x&&++y||++z 因为++x=0,所以++y就不用算了, 因为是||,后面++z还要算。最后x=0,y=-1,z=0
例子2
x=y=z=-1
++x&&++y&&++z 因为++x=0,后面都是&& 整个结果已经确认是0,所以后面++y,++z不会算了,最后 x=0,y=-1,z=-1
总结下就是如果整个表达式的结果能确认了,后面的算式都不用算