機能 |
保存してある呼出し環境を復元するを表す。 呼出し環境を保存する場合は、setjmpマクロを用いる。 |
||||
---|---|---|---|---|---|
定義 |
#include <longjmp.h> void longjmp ( jmp_buf env, int val ); |
||||
引数 |
|
||||
実装例 |
#include <setjmp.h> #include <stdio.h> int main(void) { jmp_buf jmp; printf("Set jump point.\n"); if (setjmp( jmp ) == 0) /* 復元場所 ジャンプした時は戻り値が1となる */ { printf("Go to a jump point and assume a return value of longjmp() is 1.\n"); longjmp( jmp, 1 ); /* 戻り値を1にしてジャンプする */ } printf("Finish.\n"); return 0; } |
||||
実行結果 |
Set jump point. Go to a jump point and assume a return value of longjmp() is 1. Finish. |
longjmp()