使用valgrind检查代码是否有内存泄露是比较好的办法。
下面简单介绍valgrind的安装及使用。
安装:
最新的版本可以在http://www.cnblogs.com/chingliu/archive/2011/12/10/2288633.html上查找,下面以3.7为例,简单介绍:
wget http://www.valgrind.org/downloads/valgrind-3.7.0.tar.bz2
tar xjf valgrind-3.7.0.tar.bz2
./configure --prefix=~
make && make install
关于使用:
网上有一篇大牛的文章,说的非常细致,这里做一个引用:http://www.ibm.com/developerworks/cn/linux/l-cn-valgrind/
核心内容均来自于此,这里要说的只是个人觉得重要的部分。
- 使用未初始化的变量
- 读写内存越界
- 内存覆盖