如何使用 valgrind 工具解决C语言程序内存泄漏问题
【摘要】 使用 valgrind 工具解决C语言程序内存泄漏问题
编写C语言程序过程中总要t小心翼翼地避免内存泄漏问题,但总有落网之鱼,此时强大的 valgrind 工具就可以派上用场,解君之忧。
先收藏下官方文档,链接:https://www.valgrind.org/
本人测试系统:REDHAT(当然其他系统也是支持的)
一、安装Valgrind
1. 下载安装包,此时(21年8月)我选择的是 Valgrind 3.17.0
安装包路径:https://www.valgrind.org/downloads/current.html
2. 解压缩
tar -jxvf valgrind-3.17.0.tar.bz2
3.进入目录,进行安装,其中/home/user1/valgrind是你想安装的目录
cd valgrind-3.17.0
./configure --prefix=/home/user1/valgrind
make
make install
4.配置环境变量
vim ~/.bashrc
export PATH=$PATH:/home/user1/valgrind/bin/
使改变生效
source ~/.bashrc
二、简单使用
valgrind --tool=memcheck --leak-check=yes --show-reachable=yes --run-libc-freeres=yes ./a.out
运行后会具体显示代码中哪行存在问题,修改后达到 ERROR SUMMARY 0 error 效果即可,如下所示
参考:
Valgrind的安装及简单使用 https://www.cnblogs.com/qujingtongxiao/p/9901213.html
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)