ERR

Section: C Library Functions (3)
索引 jman

BSD mandoc
 

索引

名称

err verr errc verrc errx verrx warn vwarn warnc vwarnc warnx vwarnx err_set_exit err_set_file - フォーマットされたエラーメッセージ  

索引

ライブラリ

Lb libc  

索引

書式

In err.h Ft void Fn err int eval const char *fmt ... Ft void Fn err_set_exit void (*exitf)(int) Ft void Fn err_set_file void *vfp Ft void Fn errc int eval int code const char *fmt ... Ft void Fn errx int eval const char *fmt ... Ft void Fn warn const char *fmt ... Ft void Fn warnc int code const char *fmt ... Ft void Fn warnx const char *fmt ... In stdarg.h Ft void Fn verr int eval const char *fmt va_list args Ft void Fn verrc int eval int code const char *fmt va_list args Ft void Fn verrx int eval const char *fmt va_list args Ft void Fn vwarn const char *fmt va_list args Ft void Fn vwarnc int code const char *fmt va_list args Ft void Fn vwarnx const char *fmt va_list args  

索引

解説

Fn err 関数と Fn warn 関数のファミリは、標準エラー出力、または Fn err_set_file 関数を使用して指定した別のファイル上にフォーマット済みの エラーメッセージを表示します。 すべての場合に、プログラム名の最後のコンポーネント、コロンキャラクタ、 およびスペースが出力されます。 Fa fmt 引数が NULL でない場合、 printf(3) のようなフォーマット済みのエラーメッセージが出力されます。 出力の最後には改行文字が付きます。

Fn err , Fn errc , Fn verr , Fn verrc , Fn warn , Fn warnc , Fn vwarn , Fn vwarnc の関数は、code または大域変数 errno に基くエラーメッセージを、前にコロンと空白を付けて、付加します。 ただし、 Fa fmt 引数が NULL の場合は例外です。

Fn errc , Fn verrc , Fn warnc , および Fn vwarnc の各関数の場合、 code 引数がエラーメッセージの検索に使用されます。

Fn err , Fn verr , Fn warn , および Fn vwarn の各関数は、 グローバル変数 errno を使用してエラーメッセージを検索します。

Fn errx 関数および Fn warnx 関数は、エラーメッセージを追加しません。

Fn err , Fn verr , Fn errc , Fn verrc , Fn errx , および Fn verrx の各関数は、 戻りませんが、引数 Fa eval の値で終了します。 Fn err_set_exit 関数を使用して、 exit(3) の前に呼び出される関数を指定して、必要なクリーンアップを 実行できます。 exitf 用に NULL 関数ポインタを割り当てると、フックが 何もしないようにリセットされます。 関数は、他の関数が使用する出力ストリームを設定します。 Fa vfp 引数は、開いているストリーム (既に void * に変換されているかもしれません) か、NULL ポインタです (この場合出力ストリームは標準エラーに設定されます)。  

索引

現在の 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);

グローバル変数 errno を使用しないエラーの警告

error = my_function();  /* returns a value from <errno.h> */
if (error != 0)
        warnc(error, "my_function");
 

索引

関連項目

exit(3), printf(3), strerror(3)

 

索引

歴史

Fn err 関数と Fn warn 関数は最初に BSD 4.4 で現れました。 Fn err_set_exit 関数 Fn err_set_file 関数は最初に Fx 2.1 で現れました。 Fn errc 関数と Fn warnc 関数は最初に Fx 3.0 で現れました。


 

索引

Index

名称
ライブラリ
書式
解説
関連項目
歴史

jman



Time: 07:07:16 GMT, January 12, 2009