内存检测工具memwatch的使用(windows)

一、memwatch

memwatch是一个能够用于检测内存泄漏和错误的工具。

下载链接:https://www.linkdata.se/sourcecode/memwatch/

二、使用步骤

1.将memwatch.h和memwatch.c复制到项目之下。   
2.程序包含memwatch.h   (如果有多个文件,应该每个文件都要包含这个.h  未实验)
3.主程序最上面进行宏定义:
                  #define MEMWATCH
                  #define MEMWATCH_STDIO 或则 #define MW_STDIO
4.生成的memwatch.log在当前目录

三、测试程序

#define _CRT_SECURE_NO_WARNINGS
#define MEMWATCH
#define MEMWATCH_STDIO
//#define MW_STDIO

#include <stdio.h>
#include <stdlib.h>
#include "memwatch.h"

int getMem(char **myp)
{
	char *p = (char*)malloc(100);
	if (p == NULL)
	{
		return -1;
	}
	*myp = p;
	return 0;
}


void main()
{
	char *tmp = NULL;
	getMem(&tmp);
	system("pause");
}

四、memwatch.log结果

============= MEMWATCH 2.71 Copyright (C) 1992-1999 Johan Lindh =============

Started at Thu Mar 19 20:48:57 2020

Modes: 64-bit mwDWORD==(unsigned long)
mwROUNDALLOC==8 sizeof(mwData)==32 mwDataSize==32
Compiled using Microsoft C 18.00


Stopped at Thu Mar 19 20:48:59 2020

unfreed: <1> e:\code\c++\c提高\内存泄漏工具使用测试\内存泄漏工具使用测试\memwatch_test.cpp(12), 100 bytes at 0129DEA0  	{FE FE FE FE FE FE FE FE FE FE FE FE FE FE FE FE ................}

Memory usage statistics (global):
 N)umber of allocations made: 1
 L)argest memory usage      : 100
 T)otal of all alloc() calls: 100
 U)nfreed bytes totals      : 100
MEMWATCH detected 1 anomalies

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值