中的错误:双链表0xb2808cf8 C++损坏

Error in : corrupted double-linked list 0xb2808cf8 C++

本文关键字:0xb2808cf8 C++ 损坏 链表 错误      更新时间:2023-10-16

我的应用程序出现此错误。在Windriver Linux上)

 *** Error in `./BasicTimersTest': corrupted double-linked list: 0xb2808cf8 ***

根据回溯,在为内存分配新内存时可以看到这种情况。

我的代码中没有双向链表。我浏览了这个问题,大多数网站都在谈论类似的问题,但将 glibc 检测为前缀。

两者之间有什么区别,错误跟踪(0xb2808cf8)中打印的地址有什么意义吗?

我看到这条消息,其中 malloc 数据结构已损坏,很可能您在错误的指针上调用了 free,例如,它不指向分配区域的开头,或者已经释放(双重释放),或者您以某种方式写入内部 malloc 结构,通过在数组外部写入。它可能在您调用new之前很久就发生了,但是您只尝试分配新内存时才看到了问题。