C ++ longjmp () a setjmp () - štandardná knižnica C ++

Funkcia longjmp () v C ++ obnovuje predtým uložené prostredie volaním setjmp ().

Funkcia longjmp () je definovaná v hlavičkovom súbore.

longjmp () prototyp

 void longjmp (jmp_buf env, int status);

Prostredie, ktoré sa má načítať, je uložené v argumente env, ktorý je uložený volaním funkcie setjmp ().

parametre longjmp ()

  • env: Objekt typu jmp_buf, ktorý ukladá prostredie na načítanie.
  • status: Premenná, ktorá sa má vrátiť z setjmp. Ak je rovná 0, použije sa namiesto nej 1.

longjmp () Návratová hodnota

  • Žiadne

Príklad: Ako funguje funkcia 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; )

Po spustení programu bude výstup:

 setjmp vrátil 0 setjmp vrátil 1 Ukončenie programu

Zaujímavé články...