有没有方法可以增加数组的记忆?和相关问题
Is there way to increase memory of an array? and Related issue
简单问题:我的代码块可以编译以下代码并运行良好:
int a[2000000];
我的代码块可以编译下面的代码,但是我的程序在之后立即崩溃:
int a[2000000];
int b[2000000];
1)原因是什么,为什么?(我的RAM 16 GB !!这只是0.3MB,所以问题是什么?)
2)如何修复或使用替代方法?(但是我需要创建很多数组)
3)是否可以增加数组的内存?
相关问题(我认为是这样):
我的代码块能够编译下面的代码并运行良好:
unsigned long int a=100000000000;
我的代码块可以编译下面的代码,但是我的程序在我输入相同的数字(100000000000)后立即崩溃了:
unsigned long int a;
cin>>a;
该怎么办?
int a[2000000];
这溢出了您的堆栈限制。您可以改用std::vector<int> a(2000000);
,它将使用动态存储分配(理论上是无限的)。
编译的可执行文件具有堆栈限制
(MSVC文档)
没有此选项,堆栈大小默认为1 MB。
您的代码溢出了堆栈空间
int a[2000000];
堆栈是一种宝贵的资源,如果您需要分配大量内存,请考虑在堆中进行。
cfr。堆栈和堆在哪里?
相关文章:
- 警告处理为错误这里有什么问题
- 最小硬币更换问题(自上而下方法)
- 为"adjacent"变量赋值时出现问题
- 我的神经网络不起作用 [XOR 问题]
- 在Ubuntu 16.04上安装Cilk时出现问题
- C++我的数学有什么问题,为什么我的代码不能正确循环
- C++遗传,记忆问题
- 我的记忆动态规划算法有什么问题?
- 在使用SFML时,我会得到记忆或出于界限异常,这是什么问题
- 是记忆问题吗?C [代码块] [Windows]
- 有没有方法可以增加数组的记忆?和相关问题
- 我处理这件事的方式有记忆问题吗
- std::向量记忆问题
- 结合和记忆问题
- 我地图上的记忆问题在哪里?
- 向量的记忆行为问题
- 这会导致记忆问题吗?
- 另一个小记忆C++问题
- 简单的记忆问题练习
- 垫子结构和记忆的问题