c语言数组元素个数的函数 c语言中数组元素

C语言如何检查一个数组中元素的个数

对于字符数组str[N],判断方法有以下三种:

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了吉利免费建站欢迎大家使用!

第一种:用库函数strlen

len = strlen(str); // 数组长度

第二种:利用计数器

int i=0;

while(str[i++] != '\0'); // 数组str的长度为i

第三种:利用sizeof函数

len = sizeof(str)/sizeof(str[0]); // 数组长度对于其他类型的数组,都可以用字符数组的第三种方法,第三种方法是通用的。

C语言,求数组中元素的个数

你的数组a[0]在赋值过程中就是0啊

即a[0]=0;

for(;jMAX;j++)

{

if(a[j]==NULL)//如果数组为空则返回当前数组的下标,即为数组元素的个数

{ //或者这样写a[j]=='\0'

m=j;

printf("%d\n",m);

break;

}

}

所以上面程序j=0时,a[0] == NULL是TRUE,所以打印出m为0啊

所以你可以将赋值语句改一下即可

for(i=1;i=10;i++)

{

a[i]=i;//对十个数组依次赋值

}

c语言如何取数组元素个数?

1、C语言中,定义数组后可以用sizeof命令获得数组的长度(即可容纳元素个数)。但是通过传递数组名参数到子函数中,以获得数组长度是不可行的,因为在子函数当中,数组名会退化为一个指针。

2、例如:

int data[4],length;

length=sizeof(data)/sizeof(data[0]);  //数组占内存总空间除以单个元素占内存空间大小,即等于元素个数

printf("length of data[4]=%d", length ); //输出length of data[4]=4

C语言获取函数参数的数组的元素个数

C语言中,定义数组后可以用sizeof命令获得数组的长度(可容纳元素个数),通过数组占内存总空间/单个元素占内存空间大小,即可得到数组的元素个数

例如

但是,通过将数组作为函数参数传递到函数中,以获得数组长度是不可行的

例如

原因:数组arr是函数参数,在函数中,arr只是一个指针(地址,系统在本函数运行时,是不知道arr所表示的地址有多大的数据存储空间,这里只是告诉函数:一个数据存储空间首地址),所以,sizoef(arr)的结果是指针变量arr占内存的大小,一般在32位机上是4个字节。arr[0]是int类型,sizeof(arr[0])也是4个字节,所以,结果永远是1。

如果想要在被调用的函数中,得知原数组的大小,可以再给函数添加一个参数,用于指定数组的大小,让外界调用函数前就讲数组的大小传递进来

请问在C语言中如何获取一个数组里存在多少个元素?

有一个函数就是为了获取数组元素个数的:sizeof!

原理是:sizeof获取数组的长度然后除以数据类型所占的长度得到元素个数

我简单写下代码:

int a[100]={1,2,3,4}; int len=sizeof(a)/sizeof(int); printf("%d\n",len);

以上为原来的回答,有错误:

在给定数组大小时候sizeof这个方法就不起作用了,我当时没注意犯了错误有些误人子弟了

原谅我一年以后才来修改这个答案~

我想了想int数组默认全是0称为初始化,姑且说非0为有效元素

while(i100)

{

if(a[i]!=0)

count++;

i++;

}

遍历,记录

字符数组有结束符,只要找到结束符的位置就可以了


分享标题:c语言数组元素个数的函数 c语言中数组元素
URL链接:http://pwwzsj.com/article/hhdjhs.html