初學c++,到陣列的時候想手動寫一下迴圈輸出陣列內容的簡單迴圈,int arrayint=(1,2,3,4,5);
for (size_t i = 0; i 結果發現輸出內容不對,i的值遠遠比size大,於是查資料了解一下sizeof是什麼作用:
sizeof是乙個操作符(operator)。
其作用是返回乙個物件或型別所佔的記憶體位元組數。
就是說它是用來描述乙個物件佔多少記憶體位元組數的,
所以它的陣列大小看網上資料應該是sizeof(arrayint)/sizeof(arrayint[0]);
之所以這麼做是因為c++裡給陣列每個資料分配的記憶體大小是一樣的
另外一種方法是使用vector,不做贅述。
C 求陣列長度
c c 中沒有提供直接獲取陣列長度的函式,對於存放字串的字元陣列提供了乙個strlen函式獲取長度,那麼對於其他型別的陣列如何獲取他們的長度呢?其中一種方法是使用sizeof array sizeof array 0 在c語言中習慣上在 使用時都把它定義成乙個巨集,比如 define get arr...
C 獲取陣列長度
c c 中如何獲取陣列的長度?如何獲取陣列的長度 2010 12 15 20 49 c c 中如何獲取陣列的長度?收藏 c c 中沒有提供 直接獲取陣列長度的函式,對於存放字串的字元陣列提供了乙個strlen函式獲取長度,那麼對於其他型別的陣列如何獲取他們的長度呢?其中一種方法是使 用sizeof ...
C 獲取陣列長度
一 靜態陣列。比如 int int ary 5 靜態陣列在編譯的時候就知道了陣列長度,這對編譯器來說挺好實現的。用得最多的大概就是sizeof了吧 define countof macro x sizeof x sizeof x 0 對於c 可以用模板。如果將陣列作為函式形參的話,它會退化成乙個指標...