
比如: int a[15] ;
那就是 sizeof(a) 测出a的字节长度 , sizeof(int)测出int的长度,然后sizeof(a)/sizeof(int) 就是数组长度
数组长度都是用静态量设定的,也就是说编译阶段就确定了。
int a[10];printf("%d", sizeof(a)/sizeof(int));
这就能知道长度
字符数组是以'\0'结尾的,可以用strlen函数求长度
其它数组没有结尾标志,只能通过元素值的范围估计
例如要求元素是100以内的整数,那么如果某个元素大于100,那么数组最后一个元素一定在这个元素前面
定义数组时在中括号内写上代表长度的数字,定义一维数组和二维数组是一样的。
注意长度是直接用数字大小来代表,而索引时是从0开始算的!
例如:
#include<stdioh>main(){
int a[5];//定义一个长度为5的一维数组a
int b[5][6];//定义一个5行6列的二维数组b
}
在定义数组时可以不定义长度,可以由编译器来决定,只要在定义时赋值就可以了,这时括号内可以不写数值。
例如:
#include<stdioh>main(){
int a[] = {0,1,2,3,4};//定义一个长度为5的数组,内容为0,1,2,3,4
}
sizeof命令中,
一、如果参数是指针变量(无论什么类型的指针)其结果都是4
二、如果参数是是数组,会返回数组所占空间的大小,即:int a[n] ; sizeof(a)=nsizeof(int) ;
三、如果参数是个变量类型,则会返回这个类型所占空间的大小。sizeof(char)=1 sizeof(int)=4 sizeof(double)=8 具体一个变量类型所占的空间大小与机器类型有关系,如32位机long占4字节,而64位机long占8字节。
以上就是关于C语言 如何测出一维数组长度全部的内容,包括:C语言 如何测出一维数组长度、C语言中用什么方法可以检测数组长度、C语言中通过地址值如何求得数组长度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)