SDK_*ASSERT*

構文

#include <nitro/misc.h>

SDK_ASSERT(exp);
SDK_ASSERTMSG(exp, fmt, ...);
SDK_NULL_ASSERT(exp);
SDK_MINMAX_ASSERT(exp, min, max);
SDK_MIN_ASSERT(exp, min);
SDK_MAX_ASSERT(exp, max);
SDK_ALIGN4_ASSERT(exp);
SDK_ALIGN2_ASSERT(exp);

引数

exp 条件パラメータ
fmt 表示文字列(フォーマット文字列)
min 条件を範囲で判定する際の最小値
max 条件を範囲で判定する際の最大値

返り値

なし。

説明

本マクロは、条件を検査し、条件が満たされない場合は文字列を出力します。
その後、アプリケーションの動作を強制終了します。

SDK_ASSERTMSGでは、フォーマット文字列 fmt に従って、可変個の引数を与えることが可能です。

各マクロ関数は、以下の場合にアサートメッセージを表示します。

SDK_ASSERT( exp ) は、評価式exp の値が偽であるとき(expが成立しないとき)
SDK_ASSERTMSG( exp, fmt, ... ) は、評価式expの値が偽であるとき(expが成立しないとき)
SDK_NULL_ASSERT( exp ) は、評価式がexpの値が NULL に等しくないとき
SDK_MINMAX_ASSERT( exp, min, max ) は、評価式expの値が min以上max以下でないとき
SDK_MIN_ASSERT( exp, min ) は、評価式exp の値が min 以上でないとき
SDK_MAX_ASSERT( exp, max ) は、評価式exp の値が max 以下でないとき
SDK_ALIGN4_ASSERT( exp ) は、評価式exp の値が4の倍数でないとき
SDK_ALIGN2_ASSERT( exp ) は、評価式exp の値が2の倍数でないとき

これらのマクロ関数はデバッグ用なので、RELEASEビルドおよびFINALROMビルドでは出力動作を行ないません。

参照

SDK_WARNING*

履歴

2004/09/01 RELEASE, ROMビルドで出力を行わないことを記述
2004/03/12 SDK_ALIGN4_ASSERT, SDK_ALIGN2_ASSERT追加
2004/02/27 初版