#c #raylib
#c #raylib
Вопрос:
Я делаю простую игру в угадывание стиха из Библии. Что меня смущает, так это при использовании DrawText()
. В нем говорится, что он должен содержать строку, содержащую%s внутри, но мои данные есть char
, поэтому он использует %c
вместо %s
. Итак, я пытаюсь использовать цикл while. Но, похоже, это не работает. Я застрял, делая это целый день. Есть идеи? Большое спасибо. Я новичок, пытающийся создать игру.
То, что я пытаюсь сделать, похоже на это:
BeginDrawing();
DrawText(TextFormat(" %d:%d ", surahChoice, ayatChoice), 242, 260, 20, MAROON);
//name of surah:
while(*ptrTheSurah != 'n')
{
DrawText(TextFormat(" %c", theSurahString), 242, 260, 20, MAROON);
DrawText(" ",242,260,20,MAROON);
ptrTheSurah ;
}
EndDrawing();
Комментарии:
1. если использовать только консольное программирование, это работает! Представьте, что DrawText() заменяется на printf()..
Ответ №1:
Ваши данные, скорее всего, представляют собой массив char
, поэтому использование %s
будет правильным выбором.
Я предполагаю, что theSurahString
это const char *
, значит, указатель. Это означает, что с помощью %c
вы указываете TextFormat()
преобразовать этот указатель в целое число, а затем уменьшить его до 8 бит, распечатать и обработать как символьный код.