推荐使用工具valgrind
,安装:
sudo apt install valgrind #debian/ubuntu
内存泄漏示例代码如下:
/* code with memory leak */
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int *ptr = (int*)malloc(10);
return 0;
}
进行检测:
-> # valgrind --leak-check=full ./test
==14896== Memcheck, a memory error detector
==14896== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==14896== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright info
==14896== Command: ./test
==14896==
==14896==
==14896== HEAP SUMMARY:
==14896== in use at exit: 10 bytes