次の方法で共有


_CrtMemCheckpoint

デバッグ ヒープの現在の状態を取得し、アプリケーションが指定した _CrtMemState 構造体に格納します (デバッグ バージョンだけ)。

構文

void _CrtMemCheckpoint(
   _CrtMemState *state
);

パラメーター

state
メモリのチェックポイントを格納する _CrtMemState 構造体へのポインター。

解説

_CrtMemCheckpoint 関数は、指定された時点のデバッグ ヒープの状態のスナップショットを作成します。 このスナップショットは、メモリ リークやその他の問題の検出に役立つ _CrtMemDifference などの他のヒープ状態関数で使用できます。 _DEBUG が定義されていない場合、_CrtMemState の呼び出しは前処理で削除されます。

_CrtMemState パラメーターには、Crtdbg.h で定義されている state 構造体の割り当て済みインスタンスへのポインターを渡す必要があります。 チェックポイントの作成時に _CrtMemCheckpoint でエラーが発生すると、 _CRT_WARN デバッグ レポートが生成され、問題が表示されます。

ヒープ状態関数と _CrtMemState 構造体について詳しくは、「ヒープ状態レポート関数」をご覧ください。 デバッグ バージョンのベース ヒープでのメモリ ブロックの割り当て、初期化、管理の方法について詳しくは、「CRT デバッグ ヒープの詳細」を参照してください。

stateNULL の場合は、「パラメーターの検証」で説明されているように、無効なパラメーター ハンドラーが呼び出されます。 実行を続行できる場合は、 errno_doserrno_sys_errlist、および _sys_nerrEINVAL に設定され、関数が返されます。

要件

ルーチンによって返される値 必須ヘッダー
_CrtMemCheckpoint <crtdbg.h>、<errno.h>

互換性の詳細については、「 Compatibility」を参照してください。

ライブラリ: UCRT のデバッグ バージョンのみ。

関連項目

デバッグ ルーチン
_CrtMemDifference