CRT Debugging Techniques

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at CRT Debugging Techniques.

If you are debugging a program that uses the C run-time library, these debugging techniques might be useful.

CRT Debug Library Use
Describes the debugging support provided by the C Run-Time Library and provides instructions for accessing the tools.

Macros for Reporting
Provides information about the _RPTn and _RPTFn macros (defined in CRTDBG.H), which replace the use of printf statements for debugging.

Debug Versions of Heap Allocation Functions
Discusses the special Debug versions of the heap allocation functions, including: how the CRT maps calls, the benefits of calling them explicitly, how to avoid conversion, tracking the separate types of allocations in client blocks, and the results of not defining _DEBUG.

CRT Debug Heap Details
Provides links to memory management and the debug heap, types of blocks on the debug heap, using the debug heap, heap state reporting functions, and tracking heap allocation requests.

Debug Hook Function Writing
Lists links to client block hook functions, allocation hook functions, allocation hooks and CRT memory allocations, and report hook functions.

Finding Memory Leaks Using the CRT Library
Covers techniques for detecting and isolating memory leaks by using the debugger and the C Run-Time Library.

Debugging Native Code
Discusses some common debugging problems and techniques for C and C++ applications.

Debugger Security
Provides recommendations for more secure debugging.

Show: