C语言中a++与++a的区别是什么?详细一点,谢谢!

如题所述

a++ 是先返回a的值,再执行++运算。
++a 是先执行++运算,在返回a的值。

例如:
#include <stdio.h>
int main()
{
int a, b, c;
a = 5; //此时 a的值是5
b = a++; //这一步,a一开始为5, 先返回a的值给b,b就为5了,然后 a执行++,a就为6了。

printf("a = %d, b = %d \n", a, b); //输出 a = 6, b = 5

c = ++a; //这一步, a先执行++,a的值就为7了,然后再将a的值返回给c,c也等于7了。

printf ("a = %d, c = %d \n", a, c); //输出 a = 7, c = 7

return 0;

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-05
a++代表先取值,后运算。
++a代表先运算,后取值。
a=1;

如b = a++;
得b = 1
若b = ++a;
得b = 2
第2个回答  2012-09-05
一个用了再加1,一个先加一再用