doc/ja_JP.eucJP/man/man3/com_err.3
Kazuo Horikawa 961e281418 man3 changes provided by jpman project
Submitted by:	yuko@veltec.co.jp, jpman project <man-jp@jp.FreeBSD.org>
Obtained from:	http://veltec.co.jp/jman/
2002-03-09 15:23:45 +00:00

99 lines
2.4 KiB
Groff

.\" Copyright (c) 1988 Massachusetts Institute of Technology,
.\" Student Information Processing Board. All rights reserved.
.\"
.\" %FreeBSD: src/contrib/com_err/com_err.3,v 1.1 1999/09/04 09:48:58 markm Exp %
.\"
.\" $FreeBSD$
.\"
.TH COM_ERR 3 "22 Nov 1988" SIPB
.SH 名称
com_err \- 共通エラー表示ルーチン
.SH 書式
.nf
#include <com_err.h>
.PP
void com_err (whoami, code, format, ...);
const char *whoami;
long code;
const char *format;
.PP
proc = set_com_err_hook (proc);
.fi
void (*
.I proc
) (const char *, long, const char *, va_list);
.nf
.PP
proc = reset_com_err_hook ();
.PP
void initialize_XXXX_error_table ();
.fi
.SH 解説
.I com_err
は、
.I whoami
文字列で構成される標準エラーストリーム
.I stderr
.IR (stdio (3S)
を参照) にエラーメッセージを表示します。
.I whoami
文字列は、プログラム名またはプログラムの一部の後に、
.I code
.IR (compile_et(1)
から導出されたもの) から生成されたエラーメッセージ、および
.IR fprintf (3)
と同じスタイルで、
.I format
文字列と以降の引数を使用して作成された
文字列が続いたものを指定するはずです。
.I com_err
の動作は、
.I set_com_err_hook
を使用して修正できます。これによって、
.I com_err
に渡される引数とともに呼び出されるプロシージャが定義されます。
これは、フォーマットされたテキストを
エラー出力に送信するデフォルトの内部プロシージャの代わりです。
このように、プログラムからのエラーメッセージはすべて
.IR syslog (3)
のような別の形式の診断ログに簡単に転用できます。
.I reset_com_err_hook
を使用して、
.I com_err
をデフォルトの形式に復元することもできます。
いずれのプロシージャも前のフック値を返します。
これらのフックプロシージャは、上記の書式の
.I proc
に指定された宣言がなければなりません。
.I initialize_XXXX_error_table
ルーチンは、名前および対応する文字列の入ったソースファイルから
.IR compile_et (1)
が機械的に生成します。
各テーブルには、最高 4 文字の名前があります。
この名前はルーチンの名前で
.B XXXX
の代わりに使用されます。
これらのルーチンは、
対応するエラーコードが使用される前に呼び出す必要があるので、
.I com_err
ライブラリは、これらのテーブルが使用されるときに、
これらのテーブルからエラーコードを認識しようとします。
.B com_err.h
ヘッダファイルは、
.I com_err
ライブラリのルーチンを使用するソースファイルに
インクルードする必要があります。実行可能ファイルは、
.I com_err
ライブラリがインクルードされるように、
.I ``-lcom_err''
を使用してリンクする必要があります。
.SH 関連項目
.IR compile_et (1),
.IR syslog (3)
Ken Raeburn, "A Common Error Description Library for UNIX".