Share via


_CrtMemCheckpoint

更新 : 2007 年 11 月

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

void _CrtMemCheckpoint(
   _CrtMemState *state 
);

パラメータ

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

解説

_CrtMemCheckpoint 関数は、指定された時点のデバッグ ヒープの状態のスナップショットを作成します。他のヒープ状態関数は、このスナップショットを使用してメモリ リークおよびその他の問題を検出できます。_DEBUG が未定義の場合、_CrtMemState の呼び出しはプリプロセスで削除されます。

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

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

state が NULL の場合は、「パラメータの検証」に説明されているように、無効なパラメータ ハンドラが呼び出されます。実行の継続が許可された場合、この関数は errno、_doserrno、_sys_errlist、および _sys_nerr を EINVAL に設定して処理を戻します。

必要条件

ルーチン

必須ヘッダー

_CrtMemCheckpoint

<crtdbg.h>、<errno.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

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

使用例

crt_dbg1 サンプル : C ランタイムの基本的なデバッグ機能 を参照してください。

.NET Framework の相当するアイテム

適用できません。標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

参照

デバッグ ルーチン