_CrtMemCheckpoint
取得偵錯堆積的目前狀態,並儲存在應用程式提供的 _CrtMemState
結構中 (僅限偵錯版本)。
語法
void _CrtMemCheckpoint(
_CrtMemState *state
);
參數
state
指向 _CrtMemState
結構以填入記憶體檢查點。
備註
_CrtMemCheckpoint
函式會建立任何指定時間之偵錯堆積目前狀態的快照。 此快照集可供其他堆積狀態函式使用,例如 _CrtMemDifference
協助偵測記憶體流失和其他問題。 未定義 時 _DEBUG
,會在前置處理期間移除 對 的 _CrtMemState
呼叫。
應用程式必須將指標傳遞至先前配置之 _CrtMemState
結構的執行個體,其定義在 Crtdbg.h 的 state
參數中。 如果 _CrtMemCheckpoint
在檢查點建立期間遇到錯誤,函式會產生描述問題的 _CRT_WARN
偵錯報告。
如需堆積狀態函式和 _CrtMemState
結構的詳細資訊,請參閱 堆積狀態報表函式 。 如需如何在基底堆積偵錯版本中配置、初始化及管理記憶體區塊的詳細資訊,請參閱 CRT 偵錯堆積詳細資料 。
如果 state
為 NULL
,則會叫用不正確參數處理常式,如參數驗證 中所述 。 如果允許繼續執行, errno
則會將 、 _doserrno
、 _sys_errlist
和 _sys_nerr
設定為 , EINVAL
且函式會傳回 。
需求
常式 | 必要的標頭 |
---|---|
_CrtMemCheckpoint |
<crtdbg.h > 、 < errno.h> |
如需相容性詳細資訊,請參閱相容性。
程式庫: 僅限 UCRT 的偵錯版本。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應