Я разрабатываю приложение калькулятор в качестве домашнего задания и я проверить, какая цифра будет нажата, как это:Преобразовать LOWORD (WPARAM) на константные wchar_t *
if (LOWORD(wParam) == buttonDigit0) {
writeToOperand(L"0");
}
else if (LOWORD(wParam) == buttonDigit1) {
writeToOperand(L"1");
}
else if (LOWORD(wParam) == buttonDigit2) {
writeToOperand(L"2");
}
// ...
Где writeToOperand
является void writeToOperand(const wchar_t* digit);
И я хочу преуменьшать это нравится:
if (LOWORD(wParam) >= 100 && LOWORD(wParam) <= 109) {
writeToOperand(LOWORD(wParam));
}
Где 100
это идентификатор кнопки #define buttonDigit0 100
и 109
является #define buttonDigit9 109
. Но я не понимаю, как я могу преобразовать LOWORD(wParam)
в const wchar_t*
для моей функции writeToOperand
.
'std :: to_wstring()' –
LOWORD - это младшие 16 бит, как это может быть 32/64-разрядный адрес? Он должен преобразовать значение в строку –
@JonathanPotter спасибо! – rel1x