キャスト(またはデータへのアクセス、よくわかりません)に関して次の問題があります:
ボタンを説明するためにmap<int, string> keys
使用します。番号はAllegro5キーコードと一致します(例keys[81] = "PgDown"
)。char*
パラメータを渡す必要があるal_draw_textを使用して画面にデータを印刷したい。
私はこの方法でデータにアクセスしようとしました:
char dropdownBuffer[16];
cout << keys[dropdownKeyCode] << endl;
sprintf_s(dropdownBuffer, "%s", keys[dropdownKeyCode]);
cout << dropdownBuffer << endl;
gui.drawButton(CLIENT_PADDING, CLIENT_PADDING+50+219, 123, 38, dropdownBuffer);
コンソールは文字列Spacja
を2回出力する必要がありますが、2回目はランダムな文字がいくつかあります。
私は今何を間違っていますか?たぶん、この文字列をcharにキャストする他の可能な方法がありますか?