Показать текущее системное время в msgbox - PullRequest
0 голосов
/ 30 января 2012

Я получил ошибку при компиляции следующего кода, ошибка говорит мне, что я должен конвертировать unsigned short в char, я не знаю, как выполнить это преобразование.Я использую vc6 MFC.Это код, который я использовал.

SYSTEMTIME st;
GetSystemTime(&st);
unsigned short time = st.wHour;
MessageBoxA(TEXT(time),"system time",MB_OK);

Ответы [ 3 ]

2 голосов
/ 30 января 2012

Вы можете использовать std::ostringstream:

#include <sstream>

...

std::ostringstream time;
time << st.wHour;
MessageBoxA(time.str().c_str(),"system time",MB_OK);
0 голосов
/ 31 января 2012

или ...

char str [20];

sprintf (str, "% d", st.wHour);

MessageBoxA (str, "системное время ", MB_OK);

Родд Тейлор

Саудовская Аравия

0 голосов
/ 30 января 2012

Переменная time является целым числом, а MessageBoxA хочет строку. Вы должны преобразовать целое число в строку, чего не делает макрос TEXT. Я предлагаю вам прочитать больше на std::stringstream или, возможно, sprintf.

...