Linux下代码内存泄露检查工具valgrind

自己写的代码内存呼呼的往上涨,同事告诉我一个内存泄露检查的工具valgrind,于是就用了用。
1安装
sudo apt-get install valgrind
也可以到官方网站去下载:http://www.valgrind.org

2使用
结果输出到终端,运行命令
valgrind --leak-check=full --track-fds=yes 程序 参数
结果输出到日志,运行命令
valgrind --log-file=valgrind_log --leak-check=full --track-fds=yes 程序 参数
注意:在代码调试阶段,编译时应该加上-g参数生成调试信息,这样可以定位到代码行。

3.分析
会告诉你有几段内存泄露,代码行的什么位置,然后可以对照一段段的去看代码,可以改进几个地方之后再重新运行一次,因为某段代码的内存泄露会产生很多段的报告出来。
另外,运行的时候非常慢,如果数据量比较大,可以减少一些再测试。

总而言之,这个工具非常好用,在检查完毕代码功能之后,非常有必要用这个工具再测试一下是否有内存泄露,毕竟这类问题是很棘手的。

你可能感兴趣的:(Linux,C)