Fungsi longjmp () di C ++ memulihkan lingkungan yang sebelumnya disimpan dengan memanggil setjmp ().
Fungsi longjmp () didefinisikan dalam file header.
longjmp () prototipe
batal longjmp (jmp_buf env, int status);
Lingkungan yang akan dimuat disimpan dalam argumen env yang disimpan dengan memanggil fungsi setjmp ().
longjmp () Parameter
- env: Objek berjenis jmp_buf yang menyimpan lingkungan untuk dimuat.
- status: Variabel untuk dikembalikan dari setjmp. Jika sama dengan 0, digunakan 1 sebagai gantinya.
longjmp () Nilai kembali
- Tidak ada
Contoh: Bagaimana fungsi longjmp () bekerja?
#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; )
Saat Anda menjalankan program, hasilnya adalah:
setjmp mengembalikan 0 setjmp mengembalikan 1 Program berakhir