内存泄露检测

来源:互联网 发布:淘宝女装品牌注册 编辑:程序博客网 时间:2024/04/28 08:42
#define _CRTDBG_MAP_ALLOC //定位内存泄露所在file#include <stdlib.h>#include <crtdbg.h>void AllocMemory(char* buffer, int sz){buffer = (char*) malloc(sz);}_CrtMemState cms1, cms2, cms3;int main(){_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);_CrtMemCheckpoint(&cms1);//内存状态检测点1char* data = NULL;AllocMemory(data, 100);_CrtMemCheckpoint(&cms2);//内存状态检测点1if (_CrtMemDifference(&cms3, &cms1, &cms2))//比较两个内存检测点的内存差异,差异结果存入cms3中_CrtMemDumpStatistics(&cms3);//统计内存状态不同内存情况_CrtDumpMemoryLeaks();return 0;}