a++和++a 1、区分表达式(a++、++a)的值和变量a的值 2、a++,先定表达式后算a,表达式的值是原来没有自增运算的a的值,变量a的值则要进行自增运算 3、++a,先算a后定表达式,a的值经过自增运算后+1,表达式的值是自增运算后的a 4、表达式(a++、++a)的值都是a的值,只不过看++在前还是在后,在前就先算a,在后就后算a 5、不管哪种,a都是要+1的 */ - #include<stdio.h>
- int main(intargc, constchar * argv[])
- {
- int a=5,b1=0,b2=0,b3=0,b4=0;
- b2=a++; //b2=5,a=6
- b1=++a; //a=7,b1=7,
- {
- int a=7;
- a=++a;
- printf("%d\n",a); //a=8
- }
- a=a++;
- printf("%d\n",a); //a=7
- b3=-a++ + b1;
- printf("%d\n",b3); //b=-(a++)+b1=-7+7=0,a=8
- b4=-++a+b1;
- printf("%d\n%d\n",a,b4); //b4=-9+7=-2,a=9
- return 0;
复制代码
|