EXIT(3) | FreeBSD Library Functions Manual | EXIT(3) |
名称
exit, _Exit — 通常のプログラム終了を実行するライブラリ
Standard C Library (libc, -lc)解説
exit() と _Exit() 関数は、プロセスを終了させます。終了の前に、 exit() は、リストされた順序で次の機能を実行します:
- atexit(3) 関数で登録された関数を、登録された逆の順序で呼び出します。
- すべてのオープンされた出力ストリームをフラッシュします。
- すべてのオープンされたストリームをクローズします。
- tmpfile(3) 関数で作成されたすべてのファイルをアンリンク (unlink) します。
_Exit() 関数は、 atexit(3) 関数で登録された関数を呼び出さずに終了し、リストされた他の動作を実行するかどうか分かりません。両方の関数は、 status 引数の下位 8 ビットを wait(2) 関数ファミリを呼び出した親プロセスに利用可能とします。
C 標準規格 (ISO/IEC 9899:1999 (“ISO C99”)) は、 status の指定可能な値として、値 0
, EXIT_SUCCESS と EXIT_FAILURE を定義しています。協力するプロセスは、他の値を使用します: メール転送エージェントによって呼び出されるかもしれないプログラムで、 sysexits(3) に記述された値は、より多くの情報を親プロセスに提供するために使用されます。
atexit(3) 自体使用して登録された関数が exit() を呼び出すならば、 exit() は、限りない繰り返しを防ぐ方法は何もないことに注意してください。そのような関数は、(とはいえ、その上、望まれないかもしれない他の影響があります) 代わりに _Exit() を呼び出さなければなりません
戻り値
exit() と _Exit() 関数は、決して返りません。関連項目
_exit(2), wait(2), atexit(3), at_quick_exit(3), intro(3), quick_exit(3), sysexits(3), tmpfile(3)規格
exit() と _Exit() 関数は、 ISO/IEC 9899:1999 (“ISO C99”) に適合しています。September 9, 2002 | FreeBSD |