当我们定义一个数组的时候,其实数组名也就是一个指针,该指针指向数组的第一个元素,而c++中又不对数组是否越界进行检查,数组作为函数参数的时候又退化为指针·····(好乱好乱)下用code说明
#include <iostream>
using namespace std;
int getSize(int a[])
{
return sizeof(a);
}
int main()
{
int array[] = {1, 2, 3, 4, 5};
int* b = array;
cout << getSize(array) << " "
<< sizeof(array) << " "
<< sizeof(b) << endl;
system("pause");
return 0;
}