Linux操作系统下如何监测C程序的内存泄露

来源:互联网 发布:js防水涂料是什么材料 编辑:程序博客网 时间:2024/04/29 15:09
 在Linux下些C语言程序,最大的问题就是没有一个好的编程IDE,当然想kdevelop等工具都相当的强大,但我还是习惯使用kdevelop工具,由于没有一个习惯的编程IDE,内存检测也就成了在Linux下编写程序的一个大问题。   是不是说没有一种内存检查工具能够在Linux使用呢,也不是,像valgrind工具还是相当不错的。他的下载地址http://valgrind.org/downloads/current.html#current 下载一个valgrind 3.2.3 (tar.bz2) 工具,按照里面的README提示,安装后就可以使用这个工具来检测内存泄露和内存越界等。这是一个没有界面的内存检测工具,安装后,输入valgrind ls -l 验证一下该工具是否工作正常(这是README里面的方法,实际上是验证一下对ls -l命令的内存检测),如果你看到一堆的信息说明你的工具可以使用了。
  在编译你的程序时,请设置-g参数,编译出后使用如下的命令来判断你的程序存在内存泄露:
  valgrind --tools=memcheck --leak-check=full yourProg在输出信息中就会看到你的内存问题了。关于这些参数是什么意思可以参考valgrind --help 的输出信息。