首页 > 编程知识 正文

c语言字符串数组长度怎么算,求数组长度的函数

时间:2023-05-03 10:54:28 阅读:14275 作者:4201

从百度上知道

1、在c语言中,定义数组后,可以通过sizeof命令得到数组的长度(能容纳的元素的个数)。

例如:

intdata[4]; intlength; 长度/sizeof (数据)/sizeof )数据[0]; //数组占内存的总空间,除以单个元素占内存空间的大小,得到printf('lengthofdata[4]=%d ',length ); //输出lengthofdata[4]=4

2 .但是,通过将数组名称参数传递给子函数来获得数组长度是不可能的。

例如:

intgetlength(int[]a ) {intlength; 长度=sizeof (a )/sizeof ) a[0]; //这是错误的,得到的结果总是1returnlength; }因为a是函数自变量,所以在本函数中,a只是指针(地址,在系统执行本函数的期间,不知道a表示的地址具有多少数据存储区域。 在此,作为向函数只告诉了数据存储区域的开头地址) (sizoef(a ) )的结果,指针变量a占据存储器的大小,通常在32位机器中是4字节。 a[0]是int类型,sizeof(a[0]也是4字节,因此结果始终为1。

3、因此,要得到数组长度,必须在数组定义存在的代码区域中,采用上述方法才能取得效果。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。