#include<stdio.h>int main(){int a=-1,b=4,k;k=(++a<0)&&!(b--<0);printf("%d \n",k,a,b);return 0;}
结果为004
&& 与操作 前面的++a<0已经是false了,所以不会计算 与&& 操作后面的表达式了,因为无论后面是什么结果都是false,所以b没有变化
(++a<0)是先a+1再判断,a=0判断为已经假,&&后面就不继续了,k=0,所以结果是0,0,4