<assert.h>で定義される診断機能を無効にするためには、<assert.h>を取り込む前にNDEBUGというマクロ名を#define文で定義してください(#define NDEBUG)。
void assert(long expression) ;
assertマクロは、expressionが真の時は値を返さずに処理を終了します。expressionが偽の時は、診断情報をコンパイラによって定義された書式で標準エラーファイルに出力し、その後abort関数を呼び出します。
診断情報の中には、パラメータのプログラムテキスト、ソースファイル名、ソース行番号が含まれています。
処理系定義仕様 assert(expression)において、expressionが偽の時メッセージを出力します。
なお、コンパイル時のlangオプションにより表示は変化します。
(1) -lang=c99がないとき(C(C89)、C++、EC++言語の場合):
ASSERTION FAILED:Δ式ΔFILEΔ<ファイル名>,LINEΔ<行番号>