搞不懂 自增 增哪了
單獨寫一個
#include <stdio.h>
int main()
{
? ? int a = 100;
? ? printf("a=%d\n",a++);
return? ? 0
}??????????????????結果還是100? ? 說好的自增呢? ?不是說
a++還是++a都等于 a=a+1嗎? 既然a得值是100? 結果不應該是a=100+1? ? 所以 a=101的嗎
單獨寫一個
#include <stdio.h>
int main()
{
? ? int a = 100;
? ? printf("a=%d\n",a++);
return? ? 0
}??????????????????結果還是100? ? 說好的自增呢? ?不是說
a++還是++a都等于 a=a+1嗎? 既然a得值是100? 結果不應該是a=100+1? ? 所以 a=101的嗎
2018-12-31
舉報
2019-01-01
a++ 是取值后在運算 所以 a=100 ,
2019-01-23
例如:C語言中a=1,a=a+++1,a+++1這兩個有什么區別,前者值是3,后者是2
a=a+++1:先a++,a變為2 (即這個a++完了以后,a已經變成了2),然后開始2+1,然后再將2+1賦給a;
而a+++1:則是先a++,即a變成了2,然后加1,因為加1后并沒有賦值給回a,所以a還是2。
因為你的表達式中a沒有將取得的值再一次賦值給回a,但如果你是++a,那么程序中的結果就是101了
2019-01-11
首先a++是輸出a=100在加1,所以第一個結果是100,但運行下條語句時a的值已經是101了