C ++ longjmp () a setjmp () - standardní knihovna C ++

Funkce longjmp () v C ++ obnovuje prostředí dříve uložené voláním setjmp ().

Funkce longjmp () je definována v hlavičkovém souboru.

prototyp longjmp ()

 void longjmp (jmp_buf env, int status);

Prostředí, které se má načíst, je uloženo v argumentu env, který je uložen voláním funkce setjmp ().

longjmp () parametry

  • env: Objekt typu jmp_buf, který ukládá prostředí k načtení.
  • status: Proměnná, která se má vrátit z setjmp. Pokud je rovno 0, použije se místo toho 1.

longjmp () Návratová hodnota

  • Žádný

Příklad: Jak funguje funkce 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; )

Když spustíte program, výstup bude:

 setjmp vrátil 0 setjmp vrátil 1 Ukončení programu

Zajímavé články...