C语言数组大小

        在数组进行集成初始化时(上一篇中有相关内容,链接在下方),数组长度会由编译器设定。数组的初始化https://blog.csdn.net/weixin_52133421/article/details/122850510?utm_source=app&app_version=5.0.1&code=app_1562916241&uLinkId=usr1mkqgl919blen

        如果需要得到数组的大小,可以通过sizeof函数。sizeof(array)可以得到array数组所占的内容大小,单位为字节(Byte),sizeof(array[i])可以得出单个元素所占内容大小。所以可以通过sizeof(array)/sizeof(array[i])得出数组的长度。

源代码:

#include<stdio.h>
int main()
{
	int i;
	int number;
	int array[] = {1,3,5,4,7,0,4,6,9,12,16,23};
	printf("数组总字节数:%lu\n", sizeof(array));
	printf("数组单个元素字节数:%lu\n", sizeof(array[0]));
	number = sizeof(array) / sizeof(array[0]);     //number即为数组长度
	printf("数组长度:%d\n", number);
	for (i = 0; i < number; i++)
		printf("%d  ", array[i]);
	return 0;
}

 测试结果:

数组总字节数:48
数组单个元素字节数:4
数组长度:12
1  3  5  4  7  0  4  6  9  12  16  23

        这样得出数组长度的最大好处在于一旦修改数组中初始的数据,不需要再修改遍历的代码,例如其中的遍历数组操作。

for (i = 0; i < number; i++)
    printf("%d  ", array[i]);

        无论数组中的数据怎么修改,数组长度始终是正确的。


      

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值