HOME > こちら開発現場 > デバッグTips

assert()

ヘッダ assert.h はassertマクロを定義している。忘れてはならない のは、assertマクロは assert.h で定義していないマクロNDEBUGを参照 していることである。通常は下記の形式で使用する。
#include <assert.h>
void assert( int expression );

プログラム中の随所でassertマクロを埋め込むことが出来る。expressioin が偽であるとき、標準エラー出力に諸情報(__FILE__,__LINE__含む)を出力した後、 プログラムを終了させる(abort())。  デバッグ時にはありがたいがリリース時には不要なコードである。その場合は 下記のようにすることでassertマクロを無効にできる。
#define NDEBUG /* アサーション無効 */
#include <assert.h>

to home to home
Copyright © 1998-2008, by masu
NIFTY SERVE: QZY03321
mailto:massun.masumoto@nifty.ne.jp
URL : http://homepage3.nifty.com/~masumoto/