since : 2001.11.1 Junk Shop
DataSlim2's Room
RexDKで、データスリム2のアドインを作る。
えっと、今回は数値を表示させる方法を調べてみました。
まず、DsSDKではsprintf()を使用して数値をキャラクターコードに置きかえることができましたが、RexDKではEW80の文法で書くとアセンブルエラーが出て使用できません。
DsSDKのsprintf()は、専用コンパイラEW80が持っている関数です。
RexDKの元になったz88dkにおいて同じ使い方ができなかっただけです。
そこで、サンプルプログラムが、どのような方法で数値を表示させているのか調べたところitoa()と言う関数が用意されていました。(int to asciiの略かな?)
以下のような書き方で使用できることを確認しました。
// RexDK Test Sample 3 // Print number #include <rex/rex.h> extern int __LIB__ DsPrintfe(int,int,int,char *); void main(void){ char str[10]; //変換したコードを入れる変数を用意します。 int test=1240; itoa(srt,test); //数値をASCIIコードに変換し、str[]に入れます。 DsPrtntfe( 10, 10, 0,str); //表示します。 while(1){ } }
他にも、atol()
、atoi()
、atof()
なども用意されています。
それから、DsSDKでデバッグ用に用意されているTRACEコマンドは使用できませんでした。
コンパイル&アセンブルエラーは出なかったので使えるようにする方法が有るのかもしれません。