C ++ longjmp () og setjmp () - C ++ Standardbibliotek

Funktionen longjmp () i C ++ gendanner det miljø, der tidligere var gemt ved at kalde setjmp ().

Funktionen longjmp () er defineret i header-fil.

longjmp () prototype

 ugyldigt longjmp (jmp_buf env, int status);

Miljøet, der skal indlæses, gemmes i argumentet env, der gemmes ved at kalde setjmp () -funktionen.

longjmp () Parametre

  • env: Et objekt af typen jmp_buf, der gemmer miljøet, der skal indlæses.
  • status: Den variabel, der skal returneres fra setjmp. Hvis det er lig med 0, bruges 1 i stedet.

longjmp () Returværdi

  • Ingen

Eksempel: Hvordan fungerer 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; )

Når du kører programmet, vil output være:

 setjmp returneret 0 setjmp returneret 1 Program afsluttes

Interessante artikler...