我希望创建一个函数,用于计算传递数组的大小。
我将输入一个数组,它应该返回它的长度。我想要一个函数
int ArraySize(int * Array /* Or int Array[] */)
{
/* Calculate Length of Array and Return it */
}
void main()
{
int MyArray[8]={1,2,3,0,5};
int length;
length=ArraySize(MyArray);
printf("Size of Array: %d",length);
}
尽管大小为8,但长度应该为5,因为它包含5个元素(即使是8也可以,但5会更好)
我尝试了这个:
int ArraySize(int * Array)
{
return (sizeof(Array)/sizeof(int));
}
这是行不通的,因为"sizeof(Array)
"将返回Int指针的大小。 "sizeof
"只在同一个函数中起作用。
实际上,我从C#转回来已经很多天了,所以我记不得(也想念Array.Length()
)
问候!
MyArray
包含 8 个元素。其中 5 个已经被明确地初始化为 1、2、3、0 和 5;另外 3 个则被隐式地初始化为 0。 - pmg