本文主要是介绍Valgrind检查程序内存泄漏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。
这里主要讲一下内存泄漏检查
test.cpp的代码如下:
#include <stdlib.h>
#include <string.h>
#include <memory>void func1()
{int *p = new int(0);
}int main()
{func1();int *p = new int(1);return 0;
}
编译命令:
gcc -g test.cpp -o test -lstdc++
使用Valgrind运行程序测试内存泄漏问题
valgrind --tool=memcheck --leak-check=full ./test
程序输出:
当然valgrind调试程序时,程序中如果有bug可能会崩溃,用gdb调试生成的core文件即可
这篇关于Valgrind检查程序内存泄漏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!