最終更新:2019-09-18 (水) 16:23:02 (1675d)
assert
Top / assert
void assert(int test);
assert.h の中で、マクロとして宣言されています。assert( ) は与えられた条件が、成立しているか調べ、expression の値が0ならば、標準エラー出力( stderr )にメッセージを表示して、abort?( ) を呼び出し、プログラムを異常終了させます。
abortするケース
//ぬるぽチェック assert(p); assert( INT_MAX - a >= b );
C言語
- NDEBUGマクロが定義されていない場合にのみ有効
glibc
# define assert(expr) \ ((expr) \ ? __ASSERT_VOID_CAST (0) \ : __assert_fail (__STRING(expr), __FILE__, __LINE__, __ASSERT_FUNCTION))