表达式:(1<2)&&(1<=4) 答案是真,即表达式=1
a*a先计算,c-=b即c=c-b 即1
a=1
b=2
c=3
d=4(d++逻辑值取原d值,但是先自增1,注意与++d的区别)
由于短路运算符&&的存在,a*a
因为这个语句c-=b<=d++
先看右边的 b<=d++; 这是个判断 如果对的 则返回1 错的 就返回0
显然 这是对的 所以返回 1
把右边的看成1
则表达式变为 c-=1;
c=3;
所以 c=c-1=3-1=2;
(a*a)=1则继续c=c-b=1,d++还是用d=4即1<4为真d++后变为5
最后a=1
b=2
c=1
d=5
因为是
C-=B
C首先减1
C是3
C-意思就是C=C-1
C-1=2
2<=5为真。
a=1
b=2
c=2
d=5