Share via


CRT Debugging Techniques

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

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

In This Section

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.