跳轉到內容

C++ 程式設計/程式碼/標準 C 庫/函式/setjmp

來自華夏公益教科書,開放的書籍,開放的世界
語法
#include <csetjmp>
int setjmp( jmp_buf env );

setjmp() 函式將當前執行狀態儲存在 env 中,並返回 0。執行狀態包括有關正在執行的程式碼的基本資訊,以備將來呼叫 longjmp() 函式。如果以及何時呼叫 longjmp,setjmp() 將返回 longjmp 提供的引數 - 但是,在第二次返回時,在初始 setjmp() 呼叫後修改的變數可能具有未定義的值。

即使緩衝區是靜態宣告的,它也只在呼叫函式返回之前有效。

由於 setjmp() 不理解建構函式或解構函式,因此它已被 C++ 異常系統取代,該系統使用 throwcatch 關鍵字。

注意
setjmp 似乎不在 std 名稱空間 中。

相關主題
longjmp
華夏公益教科書