mtrace--linux下检测由malloc导致内存泄露的工具

mtrace–linux下检测由malloc导致内存泄露的工具

  1. 在代码中添加
    (1)#include“stdlib.h”
    (2)setenv(“MALLOC_RTACE”,”output”,1);
    (3)mtrace();
    如下图蓝色框:
    mtrace--linux下检测由malloc导致内存泄露的工具

  2. 对上图的mytext.c代码进行编译:gcc -o test mytext.c,在当前目录下得到test文件。

  3. 运行test:./test,在当前目录下得到output文件。

  4. output需要使用mtrace工具来查看,格式是mtrace [binary] output_file name:mtrace test output 运行结果如下:
    mtrace--linux下检测由malloc导致内存泄露的工具

  5. 上图内容并没有指出是代码中的第几行出错,在编译可执行文件test时,需要加-g:gcc -g -o test mytext.c,再按照步骤3和4查看output的内容如下图:看,有显示第几行申请内存,但没有被释放。结束。
    mtrace--linux下检测由malloc导致内存泄露的工具