將數組聲明爲全局我可以給它的大小爲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);'在堆上分配數據。 –