Freigeben über


_CrtMemCheckpoint

Ruft den aktuellen Zustand des Debugheaps ab und speichert ihn in einer von der Anwendung bereitgestellten _CrtMemState -Struktur (nur Debugversion).

Syntax

void _CrtMemCheckpoint(
   _CrtMemState *state
);

Parameter

state
Zeiger auf die _CrtMemState -Struktur, die mit dem Arbeitsspeicherprüfpunkt ausgefüllt werden soll.

Hinweise

Die _CrtMemCheckpoint -Funktion erstellt eine Momentaufnahme des aktuellen Zustands des Debugheaps eines beliebigen Moments. Diese Momentaufnahme kann von anderen Heap-Zustandsfunktionen verwendet werden, z _CrtMemDifference . B. zum Erkennen von Speicherlecks und anderen Problemen. Wenn _DEBUG nicht definiert ist, werden Aufrufe von _CrtMemState während der Vorverarbeitung entfernt.

Die Anwendung muss einen Zeiger zu einer bereits zugeordneten Instanz der _CrtMemState -Struktur, die in Crtdbg.h definiert ist, im state -Parameter übergeben. Wenn _CrtMemCheckpoint bei der Prüfpunkterstellung einen Fehler erkennt, generiert die Funktion einen _CRT_WARN -Debugbericht, der das Problem beschreibt.

Weitere Informationen über Heapzustandsfunktionen und die _CrtMemState-Struktur finden Sie unter Heap State Reporting Functions. Weitere Informationen darüber, wie Speicherblöcke in der Debugversion des Basisheaps zugeordnet, initialisiert und verwaltet werden, finden Sie unter CRT Debug Heap Details.

Wenn state den Wert NULLannimmt, wird der Handler für ungültige Parameter aufgerufen, wie in Parameter Validation. Wenn die Ausführung fortgesetzt werden darf, errnowird _doserrno_sys_errlistsie festgelegt EINVAL und _sys_nerr die Funktion zurückgegeben.

Anforderungen

Routine Erforderlicher Header
_CrtMemCheckpoint <crtdbg.h>, <errno.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Bibliotheken: nur Debugversionen der UCRT.

Siehe auch

Debugroutinen
_CrtMemDifference