一个奇怪的" Project.exe触发了一个断点。"?

时间:2015-05-13 21:02:46

标签: c++ visual-studio-2012

不要告诉我google,因为我在过去的48小时内完成了这项工作。 这是我的问题;我创建了一个执行许多itterations的lon程序;但在很少的尝试中,这个错误来了......

Critical error detected c0000374
Project.exe has triggered a breakpoint.
The program '[4452] Project.exe' has exited with code 0 (0x0).

因此,Visual Studio 2012打开newaop.cpp;其中包含几行

// newaop -- operator new[](size_t) REPLACEABLE
#include <new>

void *__CRTDECL operator new[](size_t count) _THROW1(std::bad_alloc)
     {  // try to allocate count bytes for an array
return (operator new(count));
}

/*
 * Copyright (c) 1992-2007 by P.J. Plauger.  ALL RIGHTS RESERVED.
 * Consult your license regarding permissions and restrictions.
 V5.03:0009 */

指着回归线...... 我搜索了这么多;没什么作用;问题在于,我的程序适用于少量itterations 我试图找到生成这个错误的指令(与cout&#39; s),我找到了这个循环

for (int i = OriginalCadre.X.x + 1; i < OriginalCadre.X.x + OriginalCadre.height; i++){
            for (int j = OriginalCadre.X.y + 1; j < OriginalCadre.X.y + OriginalCadre.width; j++){
                QuantityColor[Pattern_init[i][j]] ++;
            }
        }

这个循环适用于几乎没有的事情;这很奇怪!

1 个答案:

答案 0 :(得分:1)

Critical error detected c0000374表示堆损坏,这意味着你可能会对内存做坏事,例如:在缓冲区结束后写入,或者在缓冲区被释放回堆之后写入缓冲区。

我没有在那个小循环中看到任何故事迹象,但你可能正在写过QuantityColor的内存位置或类似的东西。

Debugging heap corruption errors