我从Valgrind那里得到这个结果:
==24810== HEAP SUMMARY:
==24810== in use at exit: 0 bytes in 0 blocks
==24810== total heap usage: 9 allocs, 6 frees, 0 bytes allocated
==24810==
==24810== LEAK SUMMARY:
==24810== definitely lost: 0 bytes in 0 blocks
==24810== indirectly lost: 0 bytes in 0 blocks
==24810== possibly lost: 0 bytes in 0 blocks
==24810== still reachable: 0 bytes in 0 blocks
==24810== suppressed: 0 bytes in 0 blocks
它说没有记忆被泄露。它看起来是一个好结果。但是,这些 9个分配,6个释放呢?看起来我某处没有释放一些记忆。我检查了代码,并且有3个全局const指针。也许他们不被视为错误,但打印为不自由?
我应该担心这个还是我应该认为代码没有问题? 谢谢你们。 ....只是试图理解ANSI C使用指针和内存分配的所有麻烦:)))
格言
答案 0 :(得分:0)
在valgrind网站http://valgrind.org/docs/manual/quick-start.html#quick-start.interpret
“肯定输了”:你的程序正在泄漏内存 - 修复它!
“可能已经丢失”:你的程序正在泄漏记忆,除非你正在做 有趣的东西与指针(如移动它们指向中间 堆块)。
因此,对于您的情况,您的计划应该是好的。