mac上的valgrind堆摘要错误

时间:2017-04-28 14:11:08

标签: c macos valgrind

我的valgrind总是说我分配了很多东西,即使我没有。我刚刚做了一个返回0并运行valgrind的main,它返回了这个。我刚刚重置了电脑。

我不知道它是否有任何区别,但我使用的是Mac Yosemite,但它也发生在El Capitan上,很快我也会在Sierra上进行测试。 有什么我能做的就是把#"分配"并且"绝对丢失"在valgrind?有了这样的日志,我永远不知道我是否正确地解放了一切

即使我不包含任何库

,也会发生这种情况
==11011== HEAP SUMMARY:
==11011==     in use at exit: 34,527 bytes in 414 blocks
==11011==   total heap usage: 514 allocs, 100 frees, 41,503 bytes 
allocated
==11011== 
==11011== LEAK SUMMARY:
==11011==    definitely lost: 16 bytes in 1 blocks
==11011==    indirectly lost: 0 bytes in 0 blocks
==11011==      possibly lost: 0 bytes in 0 blocks
==11011==    still reachable: 0 bytes in 0 blocks
==11011==         suppressed: 34,511 bytes in 413 blocks

1 个答案:

答案 0 :(得分:0)

我不担心这个 - 这是一个很小的数量,可能与系统有关。专注于工具在代码中识别的问题。

如果打开所有内存泄漏选项,可能会获得更多详细信息,例如

--memcheck:leak-check=full --memcheck:show-reachable=yes
--memcheck:show-possibly-lost=yes --memcheck:track-origins=yes --verbose