fonctions de la bibliothèque C - longjmp ()
C bibliothèque standard - <setjmp.h>
description
fonctions de la bibliothèque Cde longjmp void (environnement jmp_buf, valeur int ) pour restaurer un récent appel à setjmpmacro()pour sauvegarder l'environnement en définissantjmp_bufparamètres avant d' appeler setjmp () génère.
déclaration
Voici la déclaration de la fonction longjmp ().
void longjmp(jmp_buf environment, int value)
Paramètres
- environnement - ce qui est un type d'objet jmp_bufqui contient des informations sur l'environnement lorsque vous appelez magasin de setjmp.
- valeur - Ceci est l'expression setjmppour déterminer la valeur.
Valeur de retour
Cette fonction ne retourne pas de valeur.
Exemples
L'exemple suivant illustre l'utilisation de la fonction longjmp ().
#include <stdio.h> #include <stdlib.h> #include <setjmp.h> int main() { int val; jmp_buf env_buffer; /* 保存 longjmp 的调用环境 */ val = setjmp( env_buffer ); if( val != 0 ) { printf("从 longjmp() 返回值 = %s\n", val); exit(0); } printf("跳转函数调用\n"); jmpfunction( env_buffer ); return(0); } void jmpfunction(jmp_buf env_buf) { longjmp(env_buf, "w3cschool.cc"); }
Nous allons compiler et exécuter le programme ci-dessus, qui se traduira par ce qui suit:
跳转函数调用 从 longjmp() 返回值 = w3cschool.cc