sizeof(數組名)/sizeof(*數組名)=數組長度


sizeof對數組的用法

int arr[] = {22,34,3,32,82,55,89,50,37,5,64,35,9,70};
int len = (int) sizeof(arr)/sizeof(arr);
printf("%d\n",sizeof(arr));
printf("%d\n",sizeof(
arr));
輸出結果為56,4,表示最后長度為14的數組。

數組名代表元素的首地址,所以sizeof(arr)代表整個數組所占的內存空間,即144Byte=56Byte;而a表示指向首地址,即表示首地址的內容,所以sizeof(*a)表示首元素所占內存空間的大小,進行相除就是數組元素的數量。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM