> Linux Reviews > man >

error


  1. error.3.man
  2. error.9.man


1. error.3.man

Manpage of ERROR

ERROR

Section: Linux Programmer's Manual (3)
Updated: 2010-08-29
Index Return to Main Contents
 

名前

error, error_at_line, error_message_count, error_on_per_line, error_print_progname - glibc のエラー書き出し関数  

書式

#include <error.h>

void error(int status, int errnum, const char *format, ...);

void error_at_line(int status, int errnum, const char *filename,
                   unsigned int linenum, const char *format, ...);

extern unsigned int error_message_count;

extern int error_one_per_line;

extern void (* error_print_progname) (void);
 

説明

error() は汎用的なエラー書き出し関数である。 この関数は標準出力 (stdout) に書き出してから、標準エラー出力 (stderr) に書き出す。 書き出す内容は、プログラム名・コロン・スペース・ printf(3) 形式の フォーマット文字列 format で指定されたメッセージである。 errnum が 0 以外の場合、2 つ目のコロンとスペースの後に strerror(errnum) で指定された文字列も書き出す。 format に必要な任意の引き数が、引き数リストの format の後に続く。 出力の終端には改行文字が付く。

error() で出力されるプログラム名は、大域変数 program_invocation_name(3) の値である。 program_invocation_name の初期値は main() の argv[0] の値と等しい。 この変数の値は変更可能であり、変更すると error() の出力が変わる。

status が 0 以外の場合、 error() は exit(3) を呼び出して、指定された終了ステータスでプログラムを終了させる。

error_at_line() 関数は、引き数 filenamelinenum が追加されている以外は、 error() と同じである。 生成される出力は、プログラム名の後に コロン・filename の値・コロン・linenum の値が書き出される以外は、 error() と同じである。 プリプロセッサの値 __LINE____FILE__ は、 error_at_line() を呼び出すときに役に立つ。 その他のプリプロセッサの値も使うことができる。 例えば、これらの引き数で入力ファイルにおける位置を参照できる。

大域変数 error_one_per_line が 0 以外に設定されている場合、 filenamelinenum の値が共に等しい error_at_line() の呼び出しは、 1 つの (最初の) メッセージの出力にまとめられる。

大域変数 error_message_count は、 error() と error_at_line() で出力されたメッセージの数を表す。

大域変数 error_print_progname に 関数のアドレスが割り当てられている場合 (つまり NULL ではない場合)、 メッセージの前にプログラム名とコロンを書き出すのではなく、 この関数を呼び出す。 この関数は標準エラー出力 (stderr) に対しての適切な文字列を書き出さなければならない。  

準拠

これらの関数と変数は GNU による拡張であり、 移植性を考えたプログラムでは使用すべきではない。  

関連項目

err(3), errno(3), exit(3), perror(3), program_invocation_name(3), strerror(3)


 

Index

名前
書式
説明
準拠
関連項目

This document was created by man2html using the manual pages.
Time: 17:38:20 GMT, October 23, 2013

2. error.9.man

Manpage of error

error

Section: Tcl Built-In Commands (n)
Updated:
Index Return to Main Contents



 

NAME

error - Generate an error  

SYNOPSIS

error message ?info? ?code?



 

DESCRIPTION

Returns a TCL_ERROR code, which causes command interpretation to be unwound. Message is a string that is returned to the application to indicate what went wrong.

The -errorinfo return option of an interpreter is used to accumulate a stack trace of what was in progress when an error occurred; as nested commands unwind, the Tcl interpreter adds information to the -errorinfo return option. If the info argument is present, it is used to initialize the -errorinfo return options and the first increment of unwind information will not be added by the Tcl interpreter. In other words, the command containing the error command will not appear in the stack trace; in its place will be info. Historically, this feature had been most useful in conjunction with the catch command: if a caught error cannot be handled successfully, info can be used to return a stack trace reflecting the original point of occurrence of the error:


catch {...} errMsg
set savedInfo $::errorInfo
...
error $errMsg $savedInfo

When working with Tcl 8.5 or later, the following code should be used instead:

catch {...} errMsg options
...
return -options $options $errMsg

If the code argument is present, then its value is stored in the -errorcode return option. The -errorcode return option is intended to hold a machine-readable description of the error in cases where such information is available; see the return manual page for information on the proper format for this option's value.  

EXAMPLE

Generate an error if a basic mathematical operation fails:

if {1+2 != 3} {
    error "something is very wrong with addition"
}

 

SEE ALSO

catch(n), return(n)

 

KEYWORDS

error


 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLE
SEE ALSO
KEYWORDS

This document was created by man2html using the manual pages.
Time: 17:38:20 GMT, October 23, 2013

SVENSKA - SVENSKA - SVENSKA - cs - da - SVENSKA - SVENSKA - SVENSKA - SVENSKA - nl - pl - ro - SVENSKA - zh_CN