#include<stdio.h>
void main()
{ int a=3;
printf("%d\n",(a+=a-=a*a));
}
#include<stdio.h>
void main()
{ int a=3;
printf("%d\n",(a+=a-=a*a));
}
结果是-12。原因是先算axa(结果为9,此时a的值没变,还是3);然后算 a-=axa,等效于 a = a - 9;(结果为-6,因为赋值符号,此时a的值为-6,发生了改变);最后算a = a + a ,结果为-12