为RtlValidateHeap指定的地址无效(00E90000,00E9FBC8)Project.exe触发了断点

时间:2018-03-05 07:55:23

标签: c++ class oop heap

运行程序时出现此错误。有谁知道这里有什么问题?

HEAP [Project3.exe]:为RtlValidateHeap指定的地址无效(00E90000,00E9FBC8) Project3.exe已触发断点。

这里是所有代码(更新)。你认为是圆顶内存问题还是IDE问题?

http://***.azurewebsites.net/database

3 个答案:

答案 0 :(得分:0)

我没有完全查看您的代码,但我对下面的代码有疑问。

data = countData()+ 1;  heapAry = new int [data];

for(int i = 0; i< = data; i ++){heapAry [i] = 0; }

例如,您要将10个数据分配到heapAry(0-9)语句中 将11个数据初始化(0-10)到同一个变量。

请检查以下循环(0-10)。 for(int i = 0; i< = data; i ++){heapAry [i] = 0; }

谢谢, Manivasakan B。

答案 1 :(得分:0)

好的,我刚刚调试了代码,问题看起来好像是在countData fucntion中,它应该返回38,但返回0。有没有想过为什么会这样?

答案 2 :(得分:0)

实际上整个问题是countData函数的输入在被调用时从未被初始化,这就是该函数返回0值并导致该错误的方式。由店主解决.....