我由于在代码的这一部分填充数组而导致程序崩溃。即使我使用矢量进行操作,也会崩溃。
long long a[200000000]{0,1};
for(long long i{2};i<200000000;i++){
a[i]=a[i-1]+i;
}
OR
vector<int> a;
a.push_back(0);
a.push_back(1);
for(long long i{2};i<200000000;i++){
a.push_back(a.back()+i);
}
我正在使用devC ++。
[第二个使用一个向量,该向量分配您在堆上指定的内存。如果有足够的可用内存,则应该可以正常工作。目前尚不清楚第一个代码段是否在函数内,但是如果是,那么很可能会使堆栈溢出。