C 库 - <setjmp.h>
setjmp.h 头文件定义了宏 setjmp()、函数 longjmp() 和一个变量类型 jmp_buf,用于绕过正常的函数调用和返回规则。
库变量
以下是头文件 setjmp.h 中定义的变量类型 -
Sr.No. | 变量 &描述 |
---|---|
1 |
jmp_buf 这是一个数组类型,用于保存宏 setjmp() 和函数 longjmp() 的信息。 |
库宏
此库中仅定义了一个宏 -
序号 | 宏 &说明 |
---|---|
1 |
int setjmp(jmp_buf environment)
此宏将当前环境保存到变量environment中,以供函数longjmp()稍后使用。如果此宏直接从宏调用返回,则返回零,但如果它从 longjmp() 函数调用返回,则返回非零值。 |
库函数
以下是头文件 setjmp.h 中定义的唯一函数 -
Sr.No. | 函数 &说明 |
---|---|
1 |
void longjmp(jmp_buf environment, int value)
此函数将恢复上次调用 setjmp() 宏时保存的环境,该调用与程序的同一调用中调用的 jmp_buf 宏时使用相应的 jmp_buf 参数进行操作。 |