问题标签 [bad-alloc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1328 浏览

c++ - C++ 错误分配错误

我需要找到 10000 个点的数据集的所有对距离。我正在使用向量在 C++ 中编码来存储点。这是我的向量:

我正在从文件中读取输入数据并存储在数据中。然后我计算所有对距离并将其存储在 dist.

它适用于高达 8000 点的小型数据集。但是当我为更大的数据集运行相同的代码时,我收到以下错误:

在抛出 'std::bad_alloc' 的实例后调用终止

什么():std::bad_alloc

中止(核心转储)。

我已经上网,但找不到解决方案。请帮我解决这个问题。

0 投票
4 回答
115 浏览

c++ - 短素数程序中抛出的 std::bad_alloc

我很快写了一个使用eratosthenes 的素数程序。运行程序时出现应用程序崩溃。我调试了它,它告诉我std::bad_alloc。调试器不会告诉我发生异常的代码行,但会告诉我系统代码的哪一行。我的来源如下。我对 C++ 有点陌生。

也请告诉我任何不良的编程习惯。

0 投票
2 回答
417 浏览

c++ - 将数百万个对象推入 Vector = bad-alloc

我正在编译以下代码 VS2012 - 32BIT。我知道max_size()返回

“容器可以达到的最大潜在尺寸”在我的情况下:1.073.741.823(是的)

那么我怎么知道我的容器可以真正存储多少对象呢?(我有 64GB 内存)

这将最终导致错误分配。但是,由于我的目标是 x64,因此不会发生此问题,因为最大上限要高得多,但是当我想将其减小以限制用户输入时,我仍然无法确定确切的元素。

谢谢!

0 投票
2 回答
7164 浏览

c++ - 内存位置未处理的异常 bad_alloc

在 c++ 中,在分配内存时会发生 bad_alloc,或者至少这是我所理解的,但是现在我在从数组中读取内存时遇到了这个错误。我创建数组:

然后我得到了两个循环,在那里我访问了整个数组:

在第二行std::cout << possible[i * rowWidth + j ] << "\n";中,我得到了错误。

我在 Windows 上编译代码,尝试使用 3 台不同的 Windows 8 和 7 机器,使用 VS 2010、2012 和 2013 并得到相同的错误。

当我在 Mac 上编译代码时没有错误,使用 compileonline 也是如此

我认为不那么重要的变量值是:

0 投票
3 回答
400 浏览

c++ - 创建 20k 数组时的 bad_alloc

我必须做一些项目,但我被困住了。我收到一个 bad_alloc 错误。我检查了很多次代码,试图谷歌一些解决方案,但仍然没有,这就是我在这里写的原因。问题是程序运行正常,但在任务管理器中,他的内存使用量增加到 2GB(这是限制为我知道)然后它崩溃了。程序需要检查分配空间和复制变量的时间。以下是部分代码:

解决这个问题的任何想法对我来说都是值得的!

0 投票
2 回答
1337 浏览

c++ - 矢量错误分配错误 C++

我一直在研究基于向量的 avl 树已经有一段时间了。我想从文件中获取输入,但是在第 4118 个输入上它给了我一个 bad_alloc 错误。我做了一些研究并收集了我必须保留空间的输入。但即使我确实分配了空间,它仍然会给出同样的错误。

我的部分代码:

我称这个函数为:

find(T d) 找到 newNode 在 中的位置vector<node<T>*> myVector;即使没有找到newNode,它也会返回一个位置。Insert 将处理返回的整数(如下所示)

插入是:

checkSpace 是:

并且 void reParent(r) 是执行所有旋转和平衡的主要功能。我注释掉了 reParent(r),并且可能已经将问题隔离为仅在插入函数中。我对此很陌生,我很感激任何帮助。先感谢您。

rightOi 函数:

0 投票
1 回答
2189 浏览

c++ - 来自 libc.so.6 C++ 的 bad_alloc

我在 gdb 下将 C++ 程序运行到 Debian 7 64 位机器 4gb RAM 中,我遇到了 Bad_alloc 问题。尝试在 gdb 下运行它,这是回溯


这是 RDFCFTree 的构造函数:

这是 closedExtensionExplore 函数:

我怎么知道是什么导致了这个问题?哪个变量?太感谢了

0 投票
3 回答
1583 浏览

c++ - 程序崩溃 - 创建新 char 数组时出现 bad_alloc

我有一个 C++ 函数,它在遇到分隔符时将 char 数组拆分为多个 char 数组。出于某种原因,当保存第三个拆分数组时,程序会崩溃,有时会返回 std::bad_alloc 异常。

很难说,因为它并没有真正告诉我在哪一行出了问题,但我认为它发生在

我已经尝试在 CodeBlocks 中调试这一行,但由于某种原因,在使用断点和跟踪变量时,应用程序可以正常工作并正确执行。它只在正常运行时崩溃,无需调试...

另请注意,除了 fstream 和 iostream,我不能使用字符串或几乎任何库。

编辑:我尝试将new char[garums]部件更改为new char[100],它神奇地开始工作。问题是我然后将其更改为new char[10]在这种情况下一切仍然有效。我什至将保存的文本输出到控制台,它正确保存了所有内容。它怎么能在一个 10 个字符长的 char 数组中保存大词(我正在测试的词长于 10 个字符)?当我将其更改为new char[1]但是它再次开始崩溃,但仅在第三次循环迭代之后再次崩溃。所以它以某种方式将前 2 个单词保存在 1 个字符长的数组中?

EDIT2:现在它甚至神奇地开始工作了new char[garums]. 这里确实有问题,有人有什么想法吗?

0 投票
1 回答
464 浏览

c++ - C++ bad_alloc 在向量上使用 vecList.pop_back()整数列表

全部,完成这个学期并用向量做这个学生作业。在执行 int remove() 函数期间,我遇到了间歇性 bad_alloc 错误和核心转储。我相信当我使用 intList.pop_back() 时会发生这种情况。这是我第一次用矢量列表做任何事情,我有兴趣了解为什么会发生这种情况以及如何正确地做到这一点以避免将来出现这个问题。任何想法将不胜感激。

0 投票
3 回答
8273 浏览

c++ - 为什么我得到“无效的分配大小:4294967295 字节”而不是 std::bad_alloc 异常?

我编写了以下代码来为数组分配内存:

当然,我正在检查 n 是否有负值等,但是当我输入一些超过 536*(10^6) 的大数字时,我没有收到错误分配异常,而是出现“无效分配大小:4294967295 字节”崩溃。

EG 我输入 n = 536*(10^6) --> bad-alloc exception 我输入 n = 537*(10^6) --> Invalid Allocation Size: 4294967295 Bytes --> 崩溃

任何想法为什么会发生这种情况?