C++,定义大数组时出现了未知错误

错误

 ||=== Build: Debug in proj1 (compiler: GNU GCC Compiler) ===|
obj/Debug/main.o||In function `__static_initialization_and_destruction_0':|
 relocation truncated to fit||R_X86_64_32 against `.bss'|
 relocation truncated to fit||R_X86_64_32 against `.bss'|
||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

我的代码

 #include<iostream>
using namespace std;
int a[99999999999999];
int main()
{
    return 0;
}

99999999999999*4/1024/1024/1024=372529G=363.8T
可以将数据保存在数据库中或文件中进行处理。
保存在文件的话可以一个对象保存为一行,一行一行读取并处理。

你要那么大的数组干什么 99999999999999*4 你算算多少个字节

一个程序可分配的最大栈内存是有限制的,如果大的话可以用堆内存,但也需要判断是否能够成功。

太大了。不过以前定义时有这么弄过
#define MAX_SIZE 10000000
int a[MAX_SIZE]


编译器不支持定义那么大的静态数组,如果确有需要,可以在程序中动态分配这么大的空间。