a++ 运行结果不是101吗,为什么还是100?++a运行结果为什么是102?
a++(是先运算再取值,就是a已经运算出来为100,然后再加了1,换句话说,输出值为100,a实际为101)
++a(是先取值再运算,a取的101,a再加一,运算出来就是102,换句话说,a实际为102,输出也为102)
int a = 100;头文件就不写了,请勿模仿
printf("%d\n",a++);
printf("%d\n",++a);
printf("%d\n",a+2);
printf("%d\n"a);
运行结果:100 (先运算后结果,就是a已经加了1变成了101,但是a++这个式子结果没变依旧为100)
102 (先结果后运算,++a直接变成了102,a结果也变成了102)
104 (此过程不会改变a的值)
102