int a=-1,b=4,k;
k=(+ +a<0)&&!(b - -<=0);
printf("%d,%d,%d\n",k,a,b);
第二行是啥意思 为啥是0 0 4
int a=-1,b=4,k;
k=(+ +a<0)&&!(b - -<=0);
printf("%d,%d,%d\n",k,a,b);
第二行是啥意思 为啥是0 0 4
++a a进行其他值操作前先自增1 这时候a=0
a<0不成立 &&运算只要前置条件为非 那么后置条件就不会执行 这时k=0
b值没操作不变 b=4
所以 最终值 k:0 a:0 b:4