C 取得陣列長度

2022-09-04 18:18:11 字數 343 閱讀 2351

c++中沒有提供 直接獲取陣列長度的函式,對於存放字串的字元陣列提供了乙個strlen函式獲取長度,那麼對於其他型別的陣列如何獲取他們的長度呢?其中一種方法是使 用sizeof(array) / sizeof(array[0]), 在c語言中習慣上在 使用時都把它定義成乙個巨集,比如#define get_array_len(array)  (sizeof(array) / sizeof(array[0])) 。

而在c++中則可以使用模板 技術定義乙個函式,比如:

template

int getarraylen(t& array)

這樣對於不同型別的數 組都可以使用這個巨集或者這個函式來獲取陣列的長度了。

C語言獲得陣列長度的函式

1 c語言中,定義陣列後可以用sizeof命令獲得陣列的長度 可容納元素個數 例如 double a int length length sizeof a sizeof a 0 陣列佔記憶體總空間,除以單個元素佔記憶體空間大小 printf length of a d length 輸出length...

不使用sizeof求得陣列長度

在c語言中,經常使用sizeof取得陣列的長度。int len sizeof arr sizeof arr 0 其實還有乙個技巧取得陣列的長度。再次之前,我們還是先了解一下兩個位址 或者指標 相減是乙個什麼樣的狀況吧。先定義乙個int型別陣列和兩指向相鄰指標 int a 5 int p1 a 1 i...

C 陣列長度

初學c 到陣列的時候想手動寫一下迴圈輸出陣列內容的簡單迴圈,int arrayint 1,2,3,4,5 for size t i 0 i 結果發現輸出內容不對,i的值遠遠比size大,於是查資料了解一下sizeof是什麼作用 sizeof是乙個操作符 operator 其作用是返回乙個物件或型別所...