sizeof()求数组长度的时候的问题???
Tevoo 2004-12-11 10:47:57 #include <iostream>
using namespace std;
void f(int* b)
{
cout <<sizeof(b);
}
int main()
{
int a[]={3,5,6,9,7};
cout <<sizeof(a)<<endl;
f(a);
return 0;
}
/* sizeof(a)的结果为20;
sizeof(b)的结果为4;
假如sizeof(b)得出的结果为20,
那么在f()函数中就可以用sizeof(b)/sizeof(int)
求出a[]数组的个数。
在f()函数中求a[]数组的个数怎么求呢?
*/
/* 这里a和b同样指的是“指针”,
咋函数这么一传,就变了呢?
那应该sizeof(a)也是4的啊,怎么就20了呢?
用的是VC++ 6.0
*/