C ++ longjmp () și setjmp () - Biblioteca standard C ++

Funcția longjmp () din C ++ restabilește mediul salvat anterior apelând setjmp ().

Funcția longjmp () este definită în fișierul antet.

longjmp () prototip

 void longjmp (jmp_buf env, int status);

Mediul de încărcat este stocat în argumentul env care este salvat apelând funcția setjmp ().

longjmp () Parametri

  • env: Un obiect de tip jmp_buf care stochează mediul de încărcat.
  • status: Variabila de returnat de la setjmp. Dacă este egal cu 0, se folosește în schimb 1.

longjmp () Valoare returnată

  • Nici unul

Exemplu: Cât funcționează funcția 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; )

Când rulați programul, ieșirea va fi:

 setjmp returnat 0 setjmp returnat 1 Program terminat

Articole interesante...