<assert.h>

<assert.h> インクルード・ファイルは、 assert マクロを定義します。 assert を使用するときには、assert.h を設定する必要があります。

assert の定義は、#ifndef プリプロセッサー・ブロック内にあります。 #define ディレクティブまたはコンパイル・コマンドを使用して ID NDEBUG を定義していない場合、 assert マクロはアサーション式をテストします。 アサーションが false の場合、システムはメッセージを stderrに出力し、プログラムに対して打ち切りシグナルを出します。 アサーションが false の場合、システムではダンプ・ジョブ (DMPJOB) OUTPUT(*PRINT) も実行します。

NDEBUG が定義されている場合、assert は何も行わないように定義されます。 NDEBUG を定義することにより、プログラム・アサーションを抑制することができます。