将数组声明为全局我可以给它的大小为5000000 bt当我在main ?为什么在C++中声明一个数组是全局的,它的大小可以大于在主声明中的大小
工作正常
#include<iostream>
int arr[5000000];
using namespace std;
int main()
{
arr[0]=1;
cout<<arr[0];
return 0;
}
分段故障
#include<iostream>
using namespace std;
int main()
{
int arr[5000000];
arr[0]=1;
cout<<arr[0];
return 0;
}
使用'std :: vector arr(5000000);'在堆上分配数据。 –