C語言 標(biāo)準(zhǔn)庫 – <setjmp.h>

2023-01-11 16:30 更新

簡介

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

庫變量

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

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

庫宏

下面是這個(gè)庫中定義的唯一的一個(gè)宏:

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

庫函數(shù)

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

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)