Q
確定數組的大小
0
A
回答
1
聽起來你需要一個動態調整大小的數組:
std::vector<int> a;
a.push_back(1);
a.push_back(3);
std::cout << a.size(); // 2
3
用原始數組無法做到這一點。
考慮一個容器類,而不是如std::vector
:
std::vector<int> a;
a.push_back(1);
a.push_back(3);
std::cout << a.size() << "\n"; // Displays "2"
1
該陣列具有10個元素。你恰好分配了其中兩個,但這並沒有改變遊戲區的大小。如果你想simething保持元素的軌道設置使用std::vector<int>
和push_back()
:
std::vector<int> array;
array.push_back(1);
array.push_back(3);
int size = array.size();
0
油查爾斯沃思似乎是正確的。這是真的原因是,編譯時,不管數據是否包含數據,都會爲該數組預留(分配)一定量的內存。因此使用像sizeof(a)這樣的命令總是會得到相同的結果。它會返回爲你的數組分配的字節數量。在這種情況下,陣列是40個字節,因爲通常整數是4個字節長*陣列的長度(10)= 40。
儘管至少這是我讀的內容一段時間的教程,每個變量類型的分配大小似乎有所不同,從PC到PC(或OS到OS)。我知道,但是現在你至少知道你爲什麼不能用原始數組來做這件事。
相關問題
- 1. 確定數組大小
- 2. 確定數組大小
- 3. 定義不確定大小的數組
- 4. 確定輸入數組的大小plpgsql
- 5. 在C#中的數組大小確定
- 6. 固定大小的數組
- 7. 特定數組的大小
- 8. Alllocate正確的字節數組大小
- 9. 正確大小的靜態數組
- 10. Android:指定數組大小?
- 11. 如何確定多維數組的每個維度的大小?
- 12. 如何確定C#中的非託管數組的大小?
- 13. 確定mod_wsgi中python數據的大小
- 14. 確定合併排序中邊數組的大小
- 15. 獲取ArrayIndexOutOfBoundsException,數組大小是動態確定的
- 16. 確定字符數組的大小用C
- 17. 關於BinaryHeap,如何確定數組的初始大小?
- 18. 可以在運行時確定數組的大小c?
- 19. 創建內部類數組大小的構造確定
- 20. 由模板值確定的靜態數組大小
- 21. 這段代碼是做什麼來確定數組的大小?
- 22. 確定內存中字符數組的大小
- 23. 使用constexpr來確定數組指針的大小
- 24. 你如何確定字符串數組java的大小?
- 25. 用c語言在運行時確定大小的數組?
- 26. 如何確定PyTables數組的大小(以字節爲單位)?
- 27. 確定子串的大小
- 28. 確定UITableViewCell的大小
- 29. 確定BLOB列的大小
- 30. 組數組大小
該數組的大小爲10. – 2012-03-18 16:22:39
在使用C++之後,使用std :: vector即可完成此操作。 – DumbCoder 2012-03-18 16:23:27
你可以做sizeof(a)/ sizeof(int) – AlexDan 2012-03-18 16:26:11