C++ 程式設計/程式碼/標準 C 庫/函式/setjmp
外觀
| 語法 |
#include <csetjmp>
int setjmp( jmp_buf env );
|
setjmp() 函式將當前執行狀態儲存在 env 中,並返回 0。執行狀態包括有關正在執行的程式碼的基本資訊,以備將來呼叫 longjmp() 函式。如果以及何時呼叫 longjmp,setjmp() 將返回 longjmp 提供的引數 - 但是,在第二次返回時,在初始 setjmp() 呼叫後修改的變數可能具有未定義的值。
即使緩衝區是靜態宣告的,它也只在呼叫函式返回之前有效。
由於 setjmp() 不理解建構函式或解構函式,因此它已被 C++ 異常系統取代,該系統使用 throw 和 catch 關鍵字。
- 相關主題
- longjmp