我有以下错误,我不知道它是什么以及如何解决。

malloc.c:2905: __libc_malloc: Assertion `!victim || ((((mchunkptr)((char*)(victim) - 2*(sizeof(size_t)))))->size & 0x2) || ar_ptr == (((((mchunkptr)((char*)(victim) - 2*(sizeof(size_t)))))->size & 0x4) ? ((heap_info *) ((unsigned long) (((mchunkptr)((char*)(victim) - 2*(sizeof(size_t))))) & ~((2 * (4 * 1024 * 1024 * sizeof(long))) - 1)))->ar_ptr : &main_arena)' failed.


我需要你的帮助!

最佳答案

您的堆已损坏。这可能是由缓冲区溢出或写入悬空指针之类的错误引起的。在诸如valgrind或Insure之类的工具下运行该程序可能有助于指出该错误。

关于c++ - C++ malloc.c:2905:__libc_malloc:断言,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32000279/

10-09 06:24