OS_TPanic

構文

#include <nitro/os.h>

void OS_TPanic( const char *fmt, ... );

引数

fmt 出力書式文字列(フォーマット文字列)
... 可変個引数

返り値

なし。

説明

文字列を出力してプログラムを停止します。

関数内部で OS_VSNPrintf()を呼び出しているため、使用可能なフォーマット文字列(出力書式文字列)は OS_Panic() よりも限定されたものになりますが、コード量やスタック消費量を節約することができます。

文字列の出力は

 <filename>:<linenumber> Panic: <string>

の形式で行われます。<filename> <linenumber> はこの OS_TPanic() 関数を記述したファイル名と行番号となります。fmt と可変個引数で作られる文字列が、<string> となります。

これはデバッグ用の関数ですので、最終ROM版(FINALROM)ライブラリでは何もしないでただ停止する関数(OS_Terminate() と同等)となります。

内部動作

OS_TPanic() は、実際は OSi_TPanic() の #define となっています。OSi_TPanic() は weak シンボルでコンパイルされていますので、ユーザが独自に関数を定義すれば、それで上書きされます。

参照

OS_TWarning, OS_Terminate

履歴

2004/11/25 weak シンボルの記述を追加
2004/09/10 初版