1、用debugview,打开debugview,运行你的debug版本程序,可以定位到源文件的某一行。 2、包含stdlib.h crtdbg.h 两个头文件 在程序开始处添加 #define _CRTDBG_MAP_ALLOC 在程序结束处添加 _CrtDumpMemoryLeaks(); 比如 #define _CRTDBG_MAP_ALLOC int main(void) { char *p = new char; return 0; _CrtDumpMemoryLeaks(); } 运行debug版本的程序。在输出信息栏里会有内存泄露信息,可以定位到某一行 以上两种方法不是没种泄露都能定位,如果不能,会输出内存泄露信息和发生泄漏的模块,那就要自己想想,什么地方出现了泄露