#include<iostream>
using namespace std;
void sort(int arr[])
{
cout << sizeof(arr) / sizeof(arr[0]) << endl;
}
int main()
{
int a[] = { 3, 5, 4, 2, 8, 7, 9 };
sort(a);
cout << sizeof(a) / sizeof(a[0]) << endl;
system("pause");
return 0;
}
上述代码输入:7 1
请问为什么在main函数中可以通过sizeof方式正确的得到数组的长度,而在sort函数中却不能正确的得到数组的长度?
sort中参数只会认为是一个int *而已 。你需要参数增加数组长度才行