c++中定义大数组,会出错,提示未知错误
可以将大数组定义在程序外面,作为全局变量
例如以下代码会出错:
#include<iostream>
#include<cmath>
using namespace std;
int main(){
bool p[4000000];
return 0;
}
当把数组定义在程序外面,作为全局变量时,不会出错,下面代码不会出错:
#include<iostream>
#include<cmath>
using namespace std;
bool p[4000000];
int main(){
return 0;
}
函数里面的局部非静态变量占用栈空间,而栈空间非常少。
最好的方法,只要是数组,都放在全局。