0
Q
陣列地址操作
A
回答
3
不是你是誰來決定一個數組的地址,它是編譯器+鏈接器來決定在編譯+加載時。 (並且不能將數組分配給陣列,而只能分配給陣列元素。)
如果您需要適當對齊的內存,請使用<stdlib.h>
中的malloc()
函數。 C語言標準保證由malloc
返回的指針適合任何類型。如果任何類型的最低要求爲8,則這將是一個8字節對齊的指針。所以,你應該做的是:
#include <stdlib.h>
int main (void)
{
int *a;
a = malloc (2 * sizeof(*a));
if (a == NULL) { /* Handle out of memory. */ }
/* ... */
}
這其實是有點大材小用,因爲一個陣列的-INT與int a[2];
很可能有一個排列支撐最快的操作聲明。爲什麼你認爲強制8字節對齊會有好處?
相關問題
- 1. 陣列地址
- 2. 陣列操作
- 3. 陣列操作
- 4. 陣列操作
- 5. VBA陣列操作
- 6. 多陣列操作
- 7. Javascript陣列操作
- 8. 操作主陣列
- 9. 陣列RGB操作
- 10. 單維陣列地址
- 11. 陣列地址減法
- 12. 地址陣列枚舉
- 13. 陣列地址不可見
- 14. C++重寫地址操作
- 15. 按位操作地址
- 16. 雙陣列操作單陣列
- 17. 最佳陣列操作API
- 18. 操作會議多陣列
- 19. Haskell多態陣列操作
- 20. Parse.com Rest API - 操作陣列
- 21. Matlab的陣列操作
- 22. 陣列索引操作
- 23. 各種陣列操作
- 24. 在R的陣列操作
- 25. 多維PHP陣列操作
- 26. 哈希操作陣列
- 27. 紅寶石陣列,[]操作
- 28. 在陣列中的操作
- 29. MATLAB單元陣列操作
- 30. 陣列/矩陣操作出錯
你想做什麼? –
查看天氣地址是mod 8 ......如果不是以mod 8開頭 – user654761
您正在檢查地址,但調整了內容。 –