C语言中a++和++a的区别
C语言中a++和++a的区别
相同点和不同点
a++和++a的相同点在于二者都是a+1,不同点在于a++是先赋值再加1,++a是先加1再赋值,哪个在前哪个先执行
实例
# include <stdio.h>
//演示a++和++a的区别,二者相同点在于都是a+1,不同点在于a++是先赋值再加1,++a是先加1再赋值,哪个在前哪个先执行
int main(){
int c;
int a = 10;
c = a++;
printf("先赋值后运算:\n");
printf("Line 1-c的值是%d\n", c);
printf("Line 2-a的值是%d\n", a);
a = 10;
c = a--;
printf("Line 3-c的值是%d\n",c);
printf("Line 4-a的值是%d\n", a);
a = 10;
c = ++a;
printf("先运算后赋值:\n");
printf("Line 5-c的值是%d\n",c);
printf("Line 6-a的值是%d\n", a);
a = 10;
c = --a;
printf("Line 7-c的值是%d\n",c);
printf("Line 8-a的值是%d\n", a);
return 0;
}
结果:
解释:
c = a++,先赋值再运算,c = a, 然后再将a + 1,那么此时c = 10, a = 11
c = a--同理
c = ++a,先运算再赋值,a+1=11, a = 11, c = 11
c = --a同理。