我的程序运行到调用 new 关键字会导致上述错误的程度。即 char* a = new char[100]
。该错误每次都是可重现的。我运行程序直到调用 new 关键字。似乎是内存位置此时已损坏,但我不确定他的问题是什么。
此错误的可能原因是什么?
最佳答案
此错误意味着您损坏了系统内存管理器的簿记数据。 这种损坏通常是错误使用指针的结果,例如
- 使用未初始化的指针
- 在指针指向的内存被释放后使用指针(释放可能通过另一个指针发生)
- 在你的数组边界之外写入
关于c++ - Glibc 在调用新关键字 C++ 时检测到 malloc() 内存损坏 (0xb6179bb8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3836664/