_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_nerr 設定為 , EINVAL 且函式會傳回 。

需求

常式 必要的標頭
_CrtMemCheckpoint <crtdbg.h > 、 < errno.h>

如需相容性詳細資訊,請參閱相容性

程式庫: 僅限 UCRT 的偵錯版本。

另請參閱

偵錯常式
_CrtMemDifference