名前空間
変種
操作

setjmp

提供: cppreference.com
< cpp‎ | utility‎ | program
 
 
ユーティリティライブラリ
汎用ユーティリティ
日付と時間
関数オブジェクト
書式化ライブラリ (C++20)
(C++11)
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)
スワップと型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
一般的な語彙の型
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

初等文字列変換
(C++17)
(C++17)
 
プログラムサポートユーティリティ
プログラム終了
(C++11)
(C++11)
環境との通信
シグナル
シグナルの種類
非ローカルジャンプ
setjmp
 
ヘッダ <csetjmp> で定義
#define setjmp(env) /* implementation-defined */

現在の実行コンテキストを std::jmp_buf 型の変数 env に保存します。 この変数は後に std::longjmp 関数によって現在の実行コンテキストを復元するために使用することができます。 つまり、 std::longjmp 関数の呼び出しが行われたとき、実行は std::longjmp に渡された std::jmp_buf 変数が構築された特定の呼び出し元で継続されます。 その場合 setjmpstd::longjmp に渡された値を返します。

setjmp の呼び出しは以下の文脈のいずれかでのみ現れなければなりません。