2015年3月18日 星期三

a++與++a的差異

a++是先調用a的值,再把a的值加1; 換句話說a++是先處理其他的運算,然後a再加1
而++a則是先把a的值加1,再調用a的值; 也就是說++a是先把本身的值加1,然後再處理其他運算

接著看下面的兩個例子就可以清楚的了解:

範例一:

#include<stdio.h>

int main()
{
int a,b,c;
a=5;

b=a++;
printf("round_one a=%d, b=%d\n", a, b);

c=++a;
printf("round_two a=%d, c=%d\n", a, c);

return 0
}

瞭解了嗎,輸出結果如下===>
round_one a=6, b=5
round_two a=7, c=7


範例二:

#include <stdio.h>

int main ()
{
int a=5;
int b=10;

printf("a=%d\n",a++);   //印出a=5

printf("a=%d\n",a);   //印出a=6

      printf("b=%d\n",++b);   //印出b=11

        printf("b=%d\n",b);   //印出b=11

return 0;
}

沒有留言:

張貼留言