C ++ longjmp () i setjmp () - C ++ standardna biblioteka

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

Zanimljivi članci...