C 標準庫 - <setjmp.h>



setjmp.h 標頭檔案定義了宏 setjmp()、一個函式 longjmp() 和一個變數型別 jmp_buf,用於繞過正常的函式呼叫和返回機制。

庫變數

以下是 setjmp.h 標頭檔案中定義的變數型別:

序號 變數及描述
1

jmp_buf

這是一種陣列型別,用於儲存宏 setjmp() 和函式 longjmp() 的資訊。

庫宏

該庫中僅定義了一個宏:

序號 宏及描述
1 int setjmp(jmp_buf environment)

此宏將當前的環境儲存到變數 environment 中,以便稍後由函式 longjmp() 使用。如果此宏直接從宏呼叫返回,則返回零;但如果它從 longjmp() 函式呼叫返回,則返回非零值。

庫函式

以下是 setjmp.h 標頭檔案中定義的唯一一個函式:

序號 函式及描述
1 void longjmp(jmp_buf environment, int value)

此函式恢復由程式同一呼叫中對 setjmp() 宏的最最近呼叫儲存的環境,並使用相應的 jmp_buf 引數。

廣告