最近在用Dev c++联系c++编程,有一次在定义二维数组a[1001][1001]时Dev c++崩溃了 = =# ,
百度了一下发现是定义数组太大了,所以特意做了个实验,看看能定义最大的二维数组是多少:
#include<iostream>
using namespace std;
int main()
{
int a[1001][1001] = {1};
cout << a[0][0] << ' ' << a[1000][1000];
return 0;
}
看到1001x1001时,程序崩溃了。。
经过梯度下降法(^ ^)终于找到定义上限,也就是719x719:
#include<iostream>
using namespace std;
int main()
{
// int a[1001][1001] = {1};
int a[719][719] = {1};
cout << a[0][0] << ' ' << a[718][718];
return 0;
}
看来Dev c这个编译器还是有点矫情的^ ^。
那么是不是我们就没办法定义1001x1001的数组呢?当然不是啦,有个简单的方法,那就是在main函数外定义:
#include<iostream>
using namespace std;
int b[1001][1001] = {1};
int main()
{
// int a[1001][1001] = {1};
int a[719][719] = {1};
cout << a[0][0] << ' ' << a[718][718];
cout << endl;
cout << b[0][0] << ' ' << b[1000][1000];
return 0;
}
还有半个月就考ccf了,这个坑大家可得小心了~~(180块钱啊!好贵!T.T)
ccf Fan Che Le T.T