3

allegro を使用して次のコードを実行しようとしています。

textout_ex(スクリーン、フォント、numbComments、100、100、グリーン、ブラック);

numbComments は整数で、この関数の関数プロトタイプは

  void textout_ex(BITMAP *bmp, const FONT *f, const char *s, 
                                      int x, int y, int color, int bg);

そして、私の理解によれば、この整数を3番目の位置に渡すことはできません。

したがって、整数を char*s に変換する必要があります。

助けてください?

もちろん、実際の関数プロトタイプを変更することはできません

4

3 に答える 3

2

Strですstd::stringtextout_exが必要const char*です。Str.c_str()からCconst char*データ形式を取得するために使用しますStr

于 2010-04-25T21:59:56.380 に答える
1

textout_exは を期待しconst char*、あなたStrは です。stringで呼び出しtextout_exてみてくださいStr.c_str();

編集: コードに適用: textout_ex(screen, font, Str.c_str(), 100, 100, GREEN, BLACK);

于 2010-04-25T22:01:56.803 に答える
0

textprintf_ex次のように使用します。

textprintf_ex(bmp, f, x, y, color, bg, "%d", numbComments);

printf()と同じように機能します。

于 2010-04-26T20:12:24.050 に答える