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

Funkcja longjmp () w C ++ odtwarza środowisko zapisane wcześniej przez wywołanie setjmp ().

Funkcja longjmp () jest zdefiniowana w pliku nagłówkowym.

Prototyp longjmp ()

 void longjmp (jmp_buf env, int status);

Środowisko do załadowania jest przechowywane w argumencie env, który jest zapisywany przez wywołanie funkcji setjmp ().

Parametry longjmp ()

  • env: obiekt typu jmp_buf przechowujący środowisko do załadowania.
  • status: zmienna do zwrócenia z setjmp. Jeśli jest równe 0, zamiast tego używane jest 1.

longjmp () Wartość zwracana

  • Żaden

Przykład: Jak działa funkcja 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 uruchomieniu programu wynik będzie następujący:

 setjmp zwrócił 0 setjmp zwrócił 1 Zakończenie programu

Interesujące artykuły...