Provided by: manpages-ja-dev_0.5.0.0.20131015+dfsg-2_all ![bug](/img/bug.png)
![bug](/img/bug.png)
名前
err, verr, errx, verrx, warn, vwarn, warnx, vwarnx - エラーメッセージを整形する
書式
#include <err.h> void err(int eval, const char *fmt, ...); void errx(int eval, const char *fmt, ...); void warn(const char *fmt, ...); void warnx(const char *fmt, ...); #include <stdarg.h> void verr(int eval, const char *fmt, va_list args); void verrx(int eval, const char *fmt, va_list args); void vwarn(const char *fmt, va_list args); void vwarnx(const char *fmt, va_list args);
説明
err() 関数群と warn() 関数群は、エラーメッセージを整形して標準エラー出力に表示する。 どの関数の場合 も、(ディレクトリ部分を省いた)プログラム名、 コロン 1個、スペース 1個が出力される。 fmt 引き数が NULL で ない場合、 printf(3) と同様に整形が行われ、エラーメッセージが出力される。 出力は改行文字で終わる。 関数 err(), verr(), warn(), vwarn() は、グローバル変数 errno に基づいて strerror(3) から得たエラーメッ セージを出力する。 fmt 引き数が NULL でない場合は、一個ずつのコロンとスペースに続けて出力する。 関数 errx(), warnx() はエラーメッセージを付け加えない。 関数 err(), verr(), errx(), verrx() は返り値を返さないが、引き数 eval の値を exit status に設定し終了す る。
準拠
これらの関数は非標準の BSD 拡張である。
例
現在の errno の情報を表示し、終了する: if ((p = malloc(size)) == NULL) err(1, NULL); if ((fd = open(file_name, O_RDONLY, 0)) == -1) err(1, "%s", file_name); エラーメッセージを表示し、終了する: if (tm.tm_hour < START_TIME) errx(1, "too early, wait until %s", start_time_string); エラーを警告表示する: if ((fd = open(raw_device, O_RDONLY, 0)) == -1) warnx("%s: %s: trying the block device", raw_device, strerror(errno)); if ((fd = open(block_device, O_RDONLY, 0)) == -1) err(1, "%s", block_device);
関連項目
error(3), exit(3), perror(3), printf(3), strerror(3)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.54 の一部 である。プロジェクトの説明とバグ報告 に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。