int getSize(int data[]){
return sizeof(data);
}
int main(){
int data[] = {1, 2, 3, 4, 5};
cout<<sizeof(data)<<" ";
int*data;
cout<<sizeof(data)<<" ";
cout<<getSize(data)<<endl;
}
最后的结果是20, 4, 4
因为data是数组,所以长度是数组所有元素的总长度。但数组被作为函数参数传递以后,就退化为了指针,这时函数中调用sizeof得到的结果就是4.