C語言 標準庫 – <setjmp.h>

2023-01-11 16:30 更新

簡介

setjmp.h 頭文件定義了宏 setjmp()、函數(shù) longjmp() 和變量類型 jmp_buf,該變量類型會繞過正常的函數(shù)調(diào)用和返回規(guī)則。

庫變量

下面列出了頭文件 setjmp.h 中定義的變量:

序號變量 & 描述
1jmp_buf
這是一個用于存儲宏 setjmp() 和函數(shù) longjmp() 相關(guān)信息的數(shù)組類型。

庫宏

下面是這個庫中定義的唯一的一個宏:

序號宏 & 描述
1int setjmp(jmp_buf environment)
這個宏把當前環(huán)境保存在變量 environment 中,以便函數(shù) longjmp() 后續(xù)使用。如果這個宏直接從宏調(diào)用中返回,則它會返回零,但是如果它從 longjmp() 函數(shù)調(diào)用中返回,則它會返回一個非零值。

庫函數(shù)

下面是頭文件 setjmp.h 中定義的唯一的一個函數(shù):

序號函數(shù) & 描述
1void longjmp(jmp_buf environment, int value)
該函數(shù)恢復(fù)最近一次調(diào)用 setjmp() 宏時保存的環(huán)境,jmp_buf 參數(shù)的設(shè)置是由之前調(diào)用 setjmp() 生成的。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號