| ERR(3) | Library Functions Manual | ERR(3) |
名前¶
err, verr,
errx, verrx,
warn, vwarn,
warnx, vwarnx —
エラーメッセージをフォーマットにする
書式¶
#include <err.h>
void
err(int
eval, const char *fmt,
...) void
verr(int
eval, const char *fmt, va_list
args) void
errx(int
eval, const char *fmt,
...) void
verrx(int
eval, const char *fmt, va_list
args) void
warn(const char *fmt,
...) void
vwarn(const
char *fmt, va_list args)
void
warnx(const
char *fmt, ...) void
vwarnx(const
char *fmt, va_list args)
説明¶
err() や
warn()
といった一連の関数は、フォーマットされたエラーメッセージを
標準エラーに表示する。
これら全ての関数は、プログラム名からディレクトリ部分を取り去った名前に、
コロンとスペースを続けたものを出力する。
引き数 fmt が NULL
でない場合、フォーマットされたエラーメッセージ・
コロン・スペースが出力される。
err(), verr(),
warn(), vwarn()
関数の場合、大域変数
errno
の現在の値に対応したエラーメッセージ文字列が出力される。
全ての関数で、出力の後には改行文字が付く。
例¶
現在のエラー番号 (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);
関連項目¶
履歴¶
| June 9, 1993 | Linux NetKit (0.17) |