函数求数组长度,如何做

软件和网站开发以及相关技术探讨
回复
mailman
帖子: 51
注册时间: 2005-12-13 19:40
送出感谢: 2 次
接收感谢: 0
联系:

函数求数组长度,如何做

#1

帖子 mailman » 2010-09-16 12:30

代码: 全选

#include<stdio.h>
int sum(int ar[]);
int main(void){
	int a[] = {1,2,3,4,5,6};
	//printf( "%d \n",sizeof a / sizeof a[0] );
	sum( a );
}
int sum(int ar[]){
	int index ;
	//index = (sizeof ar / sizeof ar[1]);
	//printf("%d \n", index);
	printf("%zd \n",sizeof ar);
	printf("%zd \n",sizeof ar[0]);
}
结果为什么是 4 、 4 。我想求数组的长度。如何做
头像
pocoyo
论坛版主
帖子: 25878
注册时间: 2008-03-25 15:49
来自: 谁知道?
送出感谢: 5 次
接收感谢: 9 次
联系:

Re: 函数求数组长度,如何做

#2

帖子 pocoyo » 2010-09-16 12:42

fuhuizn
帖子: 712
注册时间: 2006-01-06 22:55
系统: ubuntu
送出感谢: 0
接收感谢: 11 次
联系:

Re: 函数求数组长度,如何做

#3

帖子 fuhuizn » 2010-09-16 12:46

a 是一个指针,长度等于long类型的长度。
a[0] 是int类型。
所以size都是4。
回复

回到 “软件/网站开发”