Конкатенация целого числа в LPCWSTR / строку - PullRequest
0 голосов
/ 13 апреля 2010

У меня есть программа, которая генерирует / бросает два кубика. Я хотел бы вывести эти два значения в MessageBox, например: "Dice Rolled: 1 and 3".

Проблема, с которой я сталкиваюсь, заключается в том, как объединить эти целые числа в строку. Код, который у меня есть, выглядит следующим образом:

MessageBox( NULL,                  // hWnd      - window owner (none)
            L"Dice:",              // lpText    - text for message box
            L"Dice rolled:",       // lpCaption - title for message box
            MB_OK |                // uType     - make ok box
            MB_ICONEXCLAMATION);

Каков наилучший способ сделать это?

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 13 апреля 2010

Проблема в том, что C на самом деле не поддерживает строки как тип данных, поэтому вам нужно будет имитировать строки, используя массивы символов. Например:

int die1, die2; /* need to be set somehow */
wchar_t dice[100];

wsprintf(dice, L"Dice: %d and %d", die1, die2);
MessageBox(NULL, dice, L"Dice Rolled:", MB_OK | MB_ICONEXCLAMATION);
0 голосов
/ 13 апреля 2010

Вы должны использовать sprintf для создания строки:

sprintf(s, "Dice rolled: %d and %d", dice1, dice2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...