A longjmp () függvény a C ++ - ban helyreállítja a setjmp () meghívásával korábban mentett környezetet.
A longjmp () függvény a fejlécfájlban van meghatározva.
longjmp () prototípus
void longjmp (jmp_buf env, int állapot);
A betöltendő környezet az env argumentumban van tárolva, amelyet a setjmp () függvény meghívásával mentünk el.
longjmp () paraméterek
- env: A jmp_buf típusú objektum, amely tárolja a betöltendő környezetet.
- status: A setjmp-ből visszatérő változó. Ha 0-val egyenlő, akkor helyette 1-et használunk.
longjmp () Visszatérési érték
- Egyik sem
Példa: Hogyan működik a longjmp () függvény?
#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; )
A program futtatásakor a kimenet a következő lesz:
setjmp return 0 setjmp return 1 Program befejeződik