我在想和array[i++]
之間的區別是什麼,其中數組是int array[10]
?C中的數組遞增差異
4
A
回答
8
int a[] = {1, 2, 3, 4, 5};
int i = 1;
a[i]++;
printf("%d %d\n", i, a[i]);
a[i++];
printf("%d %d\n", i, a[i]);
輸出
1 3
2 3
a[i]++
在遞增索引i
的元件,它不增加i
。並且a[i++]
增量爲i
,而不是索引i
上的元素。
11
array[i]++
遞增值array[i]
。表達式在遞增之前評估爲array[i]
。array[i++]
遞增i
的值。表達式評估爲array[i]
,之後i
已增加。
舉例說明。
假設array
包含三個整數,0,1,2,和i
等於1
array[i]++
改變array[1]
到2,計算結果爲1和葉i
等於1array[i++]
不修改array
,計算結果爲1,並改變到i
2.
後綴運營商,其中Y你在這裏使用,在遞增之前評估表達式的值。
4
array[i]++
表示(*(array+i))++
。 - >增加價值。
array[i++]
表示*(array + (i++))
。 - >增加索引。
1
這裏Array [i] ++遞增元素數組[i] 的值,但數組[i ++]遞增影響或改變數組元素指示的i值,即它表示數組元素的nxt元素array [i]之後的數組。
0
這裏array [i ++]遞增索引號。
相反,array [i] ++遞增i索引的數據值。
代碼段:
#include <iostream>
using namespace std;
int main()
{
int array[] = {5, 2, 9, 7, 15};
int i = 0;
array[i]++;
printf("%d %d\n", i, array[i]);
array[i]++;
printf("%d %d\n", i, array[i]);
array[i++];
printf("%d %d\n", i, array[i]);
array[i++];
printf("%d %d\n", i, array[i]);
return 0;
}
相關問題
- 1. 數組中的Java遞歸差異
- 2. c - 遞增數組指針
- 3. C#lambda和數組中的遞增值
- 4. HTTP頭差異 - 遞增加載頁面
- 5. 遞增分數誤差
- 6. 遞增數組中的值
- 7. 遞增數組
- 8. OPenCV增強差異
- 9. PHP數組差異
- 10. php數組差異
- 11. JavaScript數組差異
- 12. 遞歸獲得數組中的最大差異
- 13. 數組之間的差異
- 14. 差異的目標和增加XCode中
- 15. 遞增數組值 - 的Arduino
- 16. 獲取PHP中數組的差異
- 17. 推入Perl中的數組差異
- 18. 獲取數組中的差異
- 19. php中的多維數組差異
- 20. 減去數組中元素的差異
- 21. PHP搜索數組中的差異
- 22. 多維數組差異遞歸不能在PHP中工作
- 23. 差異由指針-C++傳遞
- 24. C#中的實現差異
- 25. Python中的大小遞增Numpy數組
- 26. 角度 - 數組中的故障遞增
- 27. 向後遞增數組中的值
- 28. 差異兩個數組
- 29. 注意數組差異 - Ruby
- 30. PHP v5數組差異
我知道了。感謝大家的幫助 – samprat
這個答案缺少的是'a [i] ++'和'a [i ++]'的評估。 –
@大衛Heffernan,正確。你的回答解釋得更好。 – taskinoor