我正在寻找Valgrind来帮助提高我的C编码/调试,当我发现它只适用于Linux时——我没有其他需要或兴趣将我的操作系统转移到Linux,所以我想知道是否有同样好的Windows程序。
当前回答
列表中的另一个内存工具:内存验证器。
不是免费的,但远没有Purify或Boundschecker那么贵。
其他回答
如果你使用Borland/CodeGear/Embarcadero c++ Builder进行开发,你可以使用CodeGuard。
Windows的调试工具中有Pageheap.exe部分。它是免费的,基本上是一个自定义的内存分配器/释放器。
参见http://support.microsoft.com/kb/286470
我今天发现了这个SF项目:
http://sourceforge.net/p/valgrind4win/wiki/Home/
他们正在将valgrind移植到Windows。也许几年后,我们的窗户就会有可靠的耐磨材料了。
只是一个想法,您还可以实现一个内存分配器,并跟踪所有对malloc和free的调用。然而,这对于某些项目来说可能太多了。
Jochen Kalmbach的内存泄漏检测器合格吗?
注:最新版本的URL隐藏在文章的评论线程的某个地方。
推荐文章
- int的最大值
- 如何将文件指针(file * fp)转换为文件描述符(int fd)?
- GIT克隆在windows中跨本地文件系统回购
- C“int”的大小是2字节还是4字节?
- 多维数组如何在内存中格式化?
- printf()和puts()在C语言中的区别是什么?
- 断言是邪恶的吗?
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- 有效,但毫无价值的语法在开关情况下?
- 为什么这个Windows批处理文件只执行第一行,而在命令shell中执行所有三行?
- 如何在Visual Studio中找到堆栈跟踪?
- 环境变量存储在Windows注册表的哪里?
- 有一个好的Valgrind Windows的替代品吗?
- gcc在哪里查找C和c++头文件?