您的位置:首页 > 编程语言 > C语言/C++

简单内存泄漏检测方法,解决Detected memory leaks!问题

2016-01-13 00:00 429 查看
摘要: 工作环境:WIN7,VS2010:

最近一个项目中,程序退出后,每次都出现内存泄漏,每次退出的时候泄露的内存块都是1654,1650。

Detected memory leaks!

Dumping objects ->

{1654} normal block at 0x01CC1B28, 40 bytes long.

Data:  54 00 69 00 63 00 6B 00 65 00 74 00 20 00 69 00

{1650} normal block at 0x01CC1BF0, 16 bytes long.

Data:  64 6B E8 95 68 79 0D 4E FD 80 7F 4F 28 75 00 00

Object dump complete.

解决方法

1、在程序开始的地方,加上代码:_CrtSetBreakAlloc(1654); //1654为上面内存泄漏的块号。

2、用Debug模式运行,程序自动断点在“内存块1654”分配的位置。

3、这个时候一直利用“调试”-“退出”,或快捷键“SHIFT+F11”跳转,直到看到了自己的代码。

4、检查自己在该代码中分配的内存块,是否进行了合理的释放。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息