C ++ longjmp () in setjmp () - Standardna knjižnica C ++

Funkcija longjmp () v C ++ obnovi prej shranjeno okolje s klicem setjmp ().

Funkcija longjmp () je definirana v datoteki glave.

prototip longjmp ()

 void longjmp (jmp_buf env, int status);

Okolje za nalaganje je shranjeno v argumentu env, ki se shrani s klicem funkcije setjmp ().

longjmp () Parametri

  • env: Predmet tipa jmp_buf, ki shrani okolje za nalaganje.
  • status: spremenljivka, ki se vrne iz setjmp. Če je enako 0, se namesto njega uporabi 1.

longjmp () Vrnjena vrednost

  • Nobenega

Primer: Kako deluje 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; )

Ko zaženete program, bo rezultat:

 setjmp vrnil 0 setjmp vrnil 1 Program se zaključuje

Zanimive Članki...