#include <iostream>
#include <cstdio>
using namespace std;
int getSize(int data[])
{
return sizeof(data);
}
int main(int argc, char**argv)
{
int data1[] = {1,2,3,4,5};
// 此时得到的是数组data1的长度
int len_1 = sizeof(data1);
// 此时得到的是指针data2的长度,本质上就是求data2这个指针在内存存储长度
int*data2 = data1;
int len_2 = sizeof(data2);
// 虽然函数参数声明为data[]数组形式,但是数组data1传入函数时候还是会退化为普通的指针,
// 所以函数里面还是求得指针的存储长度。
int len_3 = getSize(data1);
cout << "len_1 = " << len_1 << ", len_2 = " << len_2 << ", len_3 = " << len_3 << endl;
return 0;
}