Linux講座にようこそ。このページは「C言語プログラミング入門 - 第14章.ライブラリ関数 - 一般ユーティリティライブラリ」です。
abort関数はプロセスを異常終了します。ファイルのオープンが出来なかったような場合で、プロセスの実行を緊急に終了させたいような場合に使うと良いでしょう。
形式 | #include <stdlib.h> void abort(void); |
---|---|
返り値 | ありません。 |
引数 | ありません。 |
exit関数はプロセスを正常終了します。main関数の場合はreturn文で帰るのと同じです。
exit関数の引数用にEXIT_SUCCESS(正常終了)とEXIT_FAILURE(異常終了)の2つの定数が用意されています。移植性を考慮しなければならないような場合は使用すると良いでしょう。(return文の引数として使うことも出来ます)
形式 | #include <stdlib.h> void exit(int status); |
---|---|
返り値 | ありません。 |
引数 |
|
atexit関数はプロセスが正常終了した場合に実行する関数を登録します。登録した関数はmain関数からreturn文で帰る場合や、exit関数が実行された場合に呼び出され実行します。
atexit関数を複数回実行して複数の関数を登録することも出来ますし、同じ関数を複数回登録することもできます。なお、複数登録した場合は登録した順番とは逆の順番で呼び出されます。
形式 | #include <stdlib.h> int atexit(void (*function)(void)); |
---|---|
返り値 | 関数登録が成功した場合は0を返します。エラーの場合は0以外を返します。 |
引数 |
|
実行時引数で指定したファイルの内容を標準出力に出力します。ファイルのオープンやクローズが出来なかった場合はabort関数で異常終了します。
$ ./ex14_7_1.prg /etc/issue Fedora release 10 (Cambridge) Kernel \r on an \m (\l) $ echo $? ← 直前に実行したプログラムの返り値を表示します 0 $ $ ./ex14_7_1.prg /etc/issue_1 アボートしました ← abort関数で出力したメッセージですが処理系により変わります $ echo $? 134 $ $ ./ex14_7_1.prg /etc/issue /etc/issue_1 実行時引数が不当です。 $ echo $? 1 $
return EXIT_FAILURE;
でも同じです)exit(EXIT_SUCCESS);
でも同じです)