我有一个简单的问题:我的程序在使用calloc()释放一些分配的内存时出现分段错误。回溯中的最后一个函数是_IO_str_pbackfail。目前我使用的是icc版本12.1.6。根据其他关于堆栈溢出的问题,这通常是由堆损坏引起的。通过查看calloc源代码,该函数似乎在分配的空间的前16个字节中写入了一些数据。我尝试在这些字节上添加一个观察点,但调试器没有检测到任何恶意写入。有没有关于如何追踪这个问题的想法?
发布于 2012-11-26 08:58:12
您可以尝试使用MALLOC_CHECK_=2或valgrind运行。
https://stackoverflow.com/questions/13557292
复制相似问题