现在有两个数,a的值是0,b的值是1,执行a=a+(a=b);
int a=0,b=1,c=0;
a=a+(a=b);
printf("%d",a);
执行结果为2,即a=1+1=2。
如果把中间的表达式中的加一个值为0的c,那么:
int a=0,b=1,c=0;
a=a+c+(a=b);
printf("%d",a);
执行结果为1,即a=0+0+1=2。
如果把c换成常量0,那么:
int a=0,b=1,c=0;
a=a+0+(a=b);
printf("%d",a);
执行结果还为2,即a=1+0+1=2。