码迷,mamicode.com
首页 > 其他好文 > 详细

C程序内存泄露检测工具

时间:2016-05-12 19:12:58      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:

今天给大家带来一款检测C程序内存泄露的一款实用工具——memwatch


memwatch简介

      MEMWATCH 由 Johan Lindh 编写,是一个开放源代码 C 语言内存错误检测工具。只要在代码中添加一个头文件并在 gcc 语句中定义了 MEMWATCH 之后,您就可以跟踪程序中的内存泄漏和错误了。MEMWATCH 支持 ANSI C,它提供结果日志记录,能检测双重释放(double-free)、错误释放(erroneous free)、没有释放的内存(unfreed memory)、溢出和下溢等等。


memwatch的使用方法

用户只需要在自己的工程项目目录中加入memwatch.h和memwatch.c,编译时加上-DMEMWATCH -DMW_STDIO及memwatch.c就能使用memwatch,例如:

gcc  test.c memwatch.c -o test -DMEMWATCH -DMW_STDIO

然后memwatch就会在默认当前目录下生成libmem.log文件

技术分享


      这个程序执行了两次,第一次我释放了内存,所以不会存在内存泄露,第二次我注释了释放资源的函数,这时候,在程序执行完毕之后,该日志文件后面就会显示你的程序在第几行,多少字节,地址等信息,然后你就可以根据这些信息修改程序


memwatch主要涉及领域


在Linux C编程中,往往会因为程序员误操作导致部分资源没有释放,这时候使用memwatch则是一个更加好的办法。


另外,以下地址还会提供在vs下面使用memwatch这款工具的办法,有兴趣可以去下载看看

memwatch内存泄露检测工具(内附在VS使用memwatch使用教程)


C程序内存泄露检测工具

标签:

原文地址:http://blog.csdn.net/q623702748/article/details/51351037

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!