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