[FAQ集] 陣列:如何知道陣列的元素個數?

看板C_and_CPP (C/C++)作者 (Khoguan Phuann)時間19年前 (2005/09/26 12:42), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
ptt.cc BBS 站 C_and_CPP 板 FAQ (0.1版) 陣列的問題 Q: 如何知道陣列的元素個數? A: 要看一開始是用什麼方式宣告的陣列。若是靜態宣告的陣列,可以用 sizeof 運算子算出來。如 void foo1() { int arr[] = { 1, 3, 5, 7, 9, 2, 4, 6 }; /* ... */ std::cout << "arr has " << sizeof(arr)/sizeof(arr[0]) << " elements\n"; } 若是動態配置的陣列,則必需在動態配置當初,就將配置了幾個元素「記錄」 下來。標準C/C++ 並未提供事後決定其元素個數的方法。 void foo2() { const size_t SIZE = 10; int* arr = new int[SIZE]; // ... std::cout << "arr has " << SIZE << " elements\n"; } by Khoguan Phuann ----------------------------------- 敬請指正錯誤,或提出更合適的答案。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.208.167 ※ 編輯: khoguan 來自: 220.130.208.167 (09/26 12:51)
文章代碼(AID): #13Dtn3kG (C_and_CPP)
文章代碼(AID): #13Dtn3kG (C_and_CPP)