Heap corruption detection tool for C++

狂风中的少年 提交于 2019-12-10 16:13:21

问题


Is there any tool to help me detect heap corruption in C++? I can't provide source code because it's a big project. I can use any tool that works with Visual Studio or with xcode. The tool should work fine with multithreading. The problem is not very common, it appears after a long time and only in very special cases(they were not detected precisely!).

Thank you!

EDIT:

Thanks you all for your answers! I will test the tools and I will accept one answer after the tests.


回答1:


Valgrind is the defacto tool for doing memory instrumentation for native code. It, however, does not run on Windows (OS X is fine).

There are a few commercial tools which do run on Windows, and while they feature a GUI, are in my opinion inferior to Valgrind.




回答2:


The debugging tools for Windows include gflags and page heap which help detecting heap corruptions.




回答3:


On Mac OS X (which I presume is what you mean when you say Xcode), you have a whole bunch of memory debugging tools already, e.g. http://developer.apple.com/library/mac/#releasenotes/DeveloperTools/RN-MallocOptions/index.html which lets you turn on heap checking via environment variables.




回答4:


On Windows use Application Verifier



来源:https://stackoverflow.com/questions/4689274/heap-corruption-detection-tool-for-c

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!