3个回答
展开全部
如果你是用的VC或者VS的话,可以在程序的最前面增加一段:
#ifdef _DEBUG
//for memory leak check
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#define CheckMemoryLeak _CrtSetDbgFlag( _CrtSetDbgFlag( _CRTDBG_REPORT_FLAG )| _CRTDBG_LEAK_CHECK_DF)
#endif
然后在main函数的开头增加一段:
#ifdef _DEBUG
CheckMemoryLeak;
#endif
之后在程序运行完成之后调试窗口会显示有哪些块申请之后没有释放,也就是内存泄漏。
#ifdef _DEBUG
//for memory leak check
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#define CheckMemoryLeak _CrtSetDbgFlag( _CrtSetDbgFlag( _CRTDBG_REPORT_FLAG )| _CRTDBG_LEAK_CHECK_DF)
#endif
然后在main函数的开头增加一段:
#ifdef _DEBUG
CheckMemoryLeak;
#endif
之后在程序运行完成之后调试窗口会显示有哪些块申请之后没有释放,也就是内存泄漏。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询