Longjmp () -funksjonen i C ++ gjenoppretter miljøet som ble lagret tidligere ved å ringe til setjmp ().
Longjmp () -funksjonen er definert i topptekstfilen.
longjmp () prototype
ugyldig longjmp (jmp_buf env, int status);
Miljøet som skal lastes lagres i argumentet env som lagres ved å ringe setjmp () -funksjonen.
longjmp () Parametere
- env: Et objekt av typen jmp_buf som lagrer miljøet som skal lastes inn.
- status: Variabelen som skal returneres fra setjmp. Hvis den er lik 0, brukes 1 i stedet.
longjmp () Returverdi
- Ingen
Eksempel: Hvordan fungerer 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; )
Når du kjører programmet, vil utdataene være:
setjmp returnert 0 setjmp returnerte 1 Program avsluttes