1

こんにちは、私のコード スニペットは次のとおりです。

RIT128x96x4StringDraw(HWREGBITW(&g_ulFlags, 0) ? "1" : "0", 48, 32, 15);

これは、画面に文字列を出力するためにのみ使用されます。C ++で行うように、インクリメントできる数値を出力する関数または手段が必要です

for(;;)
{ 
    cout<<i++;
}
4

1 に答える 1

1

他の質問ArmCortexDisplayから、関数のプロトタイプがわかります。

void RIT128x96x4StringDraw(char *str, ulong x, ulong y, unsigned char level);

ここにパラメータがあります、

  • xyは画面上の場所です。これらは文字の場所printf()であるため、この関数はaまたは。のようなテキストを描画しますcout
  • パラメータはlevel強度です。あなたはグレースケールのLCDを持っていると思いますが、これがテキストのまたは黒です。
  • str印刷するC文字列です。

これは、従来のCモードで数値を出力するサンプルです。

#include <stdio.h>
#include <stdlib.h>
void print_number(int i)
{
    char buffer[36];
    itoa (i,buffer,10);
    RIT128x96x4StringDraw(&buffer[0], 0, 0, 15);
}

これは、関数を使用して数値をC文字列itoa()に変換します。C ++構文を使用する場合は、次のコードの方が適している可能性があります。

void print_number(int i)
{
  std::ostringstream oss;
  oss << i++;
  /* What ever else you wish to do... */
  RIT128x96x4StringDraw(oss.str().c_str(), 0, 0, 15);
}

このコードは、防弾の本番コードを意図したものではなく、コンパイルすらできない場合があります。コンセプトを示すことです。

これは、ターゲットがリソースに制約がある場合の実装です。itoa()

于 2013-03-14T01:29:03.500 に答える