Funkcija longjmp () u C ++-u vraća prethodno spremljeno okruženje pozivanjem setjmp ().
Funkcija longjmp () definirana je u zaglavnoj datoteci.
prototip longjmp ()
void longjmp (jmp_buf env, int status);
Okolina za učitavanje pohranjena je u argumentu env koji se sprema pozivom funkcije setjmp ().
longjmp () parametri
- env: Objekt tipa jmp_buf koji pohranjuje okruženje za učitavanje.
- status: Varijabla koju treba vratiti iz setjmp-a. Ako je jednako 0, umjesto njega koristi se 1.
longjmp () Povratna vrijednost
- Nijedna
Primjer: Koliko funkcionira funkcija longjmp ()?
#include #include using namespace std; int main() ( jmp_buf env; int val; val = setjmp(env); if (val==0) ( cout << "setjmp returned " << val << endl; longjmp(env,val); ) else ( cout << "setjmp returned " << val << endl; cout << "Program terminating" << endl; ) return 0; )
Kada pokrenete program, izlaz će biti:
setjmp vratio 0 setjmp vratio 1 Završavanje programa