Everything

assert


プログラム中に診断機能を付け加えます。

[指定形式]

#include <assert.h>

void assert(long expression);

[引数]

expression 評価する式

[備考]

assertマクロは、expressionが真の時は値を返さずに処理を終了します。expressionが偽の時は、診断情報をコンパイラによって定義された書式で標準エラーファイルに出力し、その後abort関数を呼び出します。

診断情報の中には、パラメータのプログラムテキスト、ソースファイル名、ソース行番号が含まれています。

処理系定義仕様assert(expression)において、expressionが偽の時メッセージを出力します。

なお、コンパイル時のlangオプションにより表示は変化します。

(1) -lang=c99がないとき(C(C89)、C++、EC++言語の場合):

ASSERTION FAILED:Δ式ΔFILEΔ<ファイル名>,LINEΔ<行番号>

(2) -lang=c99があるとき(C(C99)言語の場合):

ASSERTION FAILED:Δ式ΔFILEΔ<ファイル名>,LINEΔ<行番号>ΔFUNCNAMEΔ<関数名>