Bibliothèque standard C - <setjmp.h>


Introduction

setjmp.h Le fichier d'en-tête définit la macro setjmp(), la fonction longjmp() et le type de variable jmp_buf, ce type de variable contournera les règles normales d'appel de fonction et de retour.

Variables de la bibliothèque

Les variables définies dans le fichier d'en-tête setjmp.h sont répertoriées ci-dessous :

Numéro de sérieVariable et description
1
序号变量 & 描述
1jmp_buf
这是一个用于存储宏 setjmp() 和函数 longjmp() 相关信息的数组类型。
jmp_buf


Il s'agit d'un type de tableau utilisé pour stocker les informations liées à la macro

setjmp()

et à la fonction

longjmp()
序号宏 & 描述
1int setjmp(jmp_buf environment)
这个宏把当前环境保存在变量 environment 中,以便函数 longjmp() 后续使用。如果这个宏直接从宏调用中返回,则它会返回零,但是如果它从 longjmp() 函数调用中返回,则它会返回一个非零值。
.

Macros de bibliothèque

Ce qui suit est la seule macro définie dans cette bibliothèque :

Numéro de sérieMacro et description
1< /td>int setjmp(jmp_buf Environment)
Cette macro enregistre l'environnement actuel dans la variable
序号函数 & 描述
1void longjmp(jmp_buf environment, int value)
该函数恢复最近一次调用 setjmp() 宏时保存的环境,jmp_buf 参数的设置是由之前调用 setjmp() 生成的。
environment pour une utilisation ultérieure de la fonction <🎜>longjmp()<🎜>. Si cette macro revient directement d'un appel de macro, elle renvoie zéro, mais si elle revient d'un appel de fonction <🎜>longjmp()<🎜>, elle renvoie une valeur non nulle.
<🎜>Fonctions de la bibliothèque <🎜><🎜>Ce qui suit est la seule fonction définie dans le fichier d'en-tête setjmp.h : <🎜>< td >1
Numéro de sérieFonction et description
void longjmp(environnement jmp_buf, valeur int)
Cette fonction restaure l'environnement enregistré lors du dernier appel de la macro <🎜>setjmp()<🎜>, <🎜>jmp_buf< 🎜> Les réglages des paramètres sont générés par les appels précédents à setjmp().
<🎜>