
lazydays
V1
2023/01/09阅读:21主题:默认主题
valgrind 安装与简单测试
1 valgrind 简介
Valgrind工具套件提供了许多调试和分析工具,可帮助您使程序更快,更正确。这些工具中最受欢迎的称为Memcheck。它可以检测许多与内存相关的错误,这些错误在 C 和 C++ 程序中很常见,并可能导致崩溃和不可预测的行为。
2 安装
#下载安装包
wget https://sourceware.org/pub/valgrind/valgrind-3.20.0.tar.bz2
#解压文件
tar -xvf valgrind-3.20.0.tar.bz2
# 编译安装
cd valgrind-3.20.0/
sh autogen.sh #(配置标准的autoconf工具,可选)
./configure
make && make install
3 示例代码
cat a.c
###############################
#include <stdlib.h>
void f(void)
{
int* x = malloc(10 * sizeof(int));
x[10] = 0; // problem 1: heap block overrun
} // problem 2: memory leak -- x not freed
int main(void)
{
f();
return 0;
}
#编译示例代码
gcc a.c
4 用valgrind检测
valgrind --leak-check=yes ./a.out

作者介绍

lazydays
V1