setjmp.h — プログラム状態の操作
setjmp.h ヘッダー・ファイルには、システム・スタックを使ってプログラム状態に影響を与える longjmp() および setjmp() の関数宣言が含まれています。 また、1 つのバッファー・タイプ jmp_bufも定義します。このバッファー・タイプは、 setjmp() 関数および longjmp() 関数がプログラム状態を保管および復元するために使用します。
_POSIX_SOURCE: setjmp.h は関数 siglongjmp() および sigsetjmp() を宣言し、 siglongjmp() および sigsetjmp()によって使用されるバッファー・タイプ sigjmp_buf を定義します。
_XOPEN_SOURCE_EXTENDED 1: setjmp.h は、関数 _longjmp() および _setjmp()を宣言します。