exit

プログラムを正常終了します.

#include <stdlib.h>
void exit(
    int status
);

exit 関数は正常プログラム終了を発生させます.プログラムが 2 回以上 exit 関数の呼び出しを行った場合の動作は未定義です.

exit 関数の動作順序は以下の通りです.

  1. atexit 関数で登録されたすべての関数を登録の逆順で呼び出します.ただし,その関数よりも前に登録されている関数のうちで,その関数の登録時点で既に呼び出されているものに対しては,それらの呼び出しよりも後の呼び出しとなります.登録された関数の呼び出しの途中で longjmp 関数の呼び出し (登録された関数の呼び出しを終了させる) がある場合,その動作は未定義となります.
  2. 書き出されていないバッファリング (buffering) されたデータをもつ,すべてのオープンしているストリーム (stream) をフラッシュ & クローズし,tmpfile 関数で生成したすべてのファイルを削除します.
  3. プログラムを終了します.status の値が 0 or EXIT_SUCCESS の場合には成功終了状態を,status の値が EXIT_FAILURE の場合には失敗終了状態を処理系定義の形式で返します.

引数

  • status: ステータス

C言語サンプルプログラム

atexit 関数のサンプルプログラムをご覧下さい.

Cプログラマの必読書

たくさんあるC言語関連の書籍の中でも特に役に立った本です.よかったら参考にしてみてください.

C実践プログラミング 第3版

C言語の実践的参考書.少々値段は張りますが初心者を脱しようとしている人は絶対に読むべきです.
文法だけでなく,コーディングスタイルやデバッグなど文字通り「実践的」なことが書かれているので非常にためになります. オライリーの本は,読みにくい本が多いのですが本書はとても読みやすくオススメです.


C言語ポインタ完全制覇 (標準プログラマーズライブラリ)

ポインタの解説書としては最高の書籍です.
この1冊でポインタを完全に理解することができます.全くの初学者が読むには敷居が高いですが,入門書を読み終えた後に読むと非常に有益です.