win32 c++控制台应用程序内存泄露检测

可以使用VLD,Visual Leak DetectorVLD)是一款用于Visual C++的免费的内存泄露检测工具,很好很强大,就是需要安装。以下是不需要安装的方式:

直接上代码:

#ifdef _DEBUG  
#define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__)  
#else  
#define DEBUG_CLIENTBLOCK  
#endif  
#define _CRTDBG_MAP_ALLOC  
//#include <stdlib.h>  
#include <crtdbg.h>  
#ifdef _DEBUG  
#define new DEBUG_CLIENTBLOCK  
#endif  

int main(int argc, char **argv) {
	_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
        char * _str=(char*)malloc(1000);
        return 0;
}
很正常的一段代码,申请了1000个字节的空间,且没有释放。

在vs中以debug模式进行调试,在程序退出后,【输出】窗口显示如下:


检测到内存泄露。

猜你喜欢

转载自blog.csdn.net/lwwl12/article/details/78989248