我正在寻找Valgrind来帮助提高我的C编码/调试,当我发现它只适用于Linux时——我没有其他需要或兴趣将我的操作系统转移到Linux,所以我想知道是否有同样好的Windows程序。


当前回答

Parasoft insur++一直是可靠的:

http://www.parasoft.com/jsp/products/insure.jsp?itemId=63

其他回答

所有分析器或多或少都包括检查内存泄漏,并在分配内存时显示堆栈。

我可以推荐英特尔并行检查器。使用简单,不需要重新编译。试运行期为30天。

GlowCode和AtromatedQA也包含这样的功能。他们都提供免费试用。

Compuware DevPartner(又名BoundsChecker)在对比中需要慢速的“仪器”重新编译,应用程序在检查错误时也会运行得更慢。和BoundsChecker不能工作与64位evsrions在所有。我们放弃了那个工具。

列表中的另一个内存工具:内存验证器。

不是免费的,但远没有Purify或Boundschecker那么贵。

在与Visual Studio结合使用时,我通常使用Visual Leak Detector或简单地使用_CrtDumpMemoryLeaks(),这是一个win32 api调用。两者都不花哨,但都能完成任务。

我今天发现了这个SF项目:

http://sourceforge.net/p/valgrind4win/wiki/Home/

他们正在将valgrind移植到Windows。也许几年后,我们的窗户就会有可靠的耐磨材料了。