一.安装Valgrind
sudo apt-get install valgrind
检查是否安装完成:
valgrind --version
二.使用方法
valgrind --tool=memcheck --leak-check=full --log-file=./log.txt ./test.exe
--leak-check=full:表示全链路检测
--log-file=log.txt:表示生成的log日志位置
./test.exe表示你要执行的文件
这里我解引用了空指针,会造成段错误,打开生成的log.txt文件可以看到报告
#include <stdio.h>
int func(int *p){
int y=*p;
return y;
}
int main(){
int *p=NULL;
return func(p);
}
这里表明了是第5行出现问题
类似于coredump的一个第三方生成错误日志工具