首先想到的是sizeof()函数
但经过试验发现这个函数返回的是数组的字节数,不是元素个数
int a[5];
a[1] = 1;
a[3] = 2;
cout << sizeof(a)/sizeof(a[1]) << endl;
这个就可以得到元素个数了。但是整型元素怎么只占4个字节啊?
如果将数组作为参数传递,则在函数中是无法获得数组的大小的,除非在增加一个参数n,表示数组大小
void test(int A[])
{
int *Arr;
Arr = A;
int size = 0;
for (int i = 0; A[i]!='\0'; i++)
{
size++;
cout << A[i] << endl;
}
cout << sizeof(A)/sizeof(A[0])<<" "<<size << endl;
Arr[2] = 5;
}