我在c++上收到错误“类型为char的参数*类型为lpcwstr的参数”,该如何修复?
char text[MAX_PATH]= {};
sprintf(text, "Number of Words: %S", computerName);
sprintf(text, "Number of Sentences: %S", userName);
sprintf(text, "Number of Digits: %d", objSystemInfo.dwNumberOfProcessors);
sprintf(text, "Number of Upper Case: %d", bit);
MessageBox(NULL, text , L"Sistem Bilgisi", MB_OK);
最佳答案
MessageBox接收LPCWSTR,您可以将其表示为wchar_t而不是char,并使用wsprintf在wchar_t中进行写入,如下所示:
wchar_t text[MAX_PATH]= {};
wsprintf(text, L"Number of Words: %s", computerName);
wsprintf(text, L"Number of Sentences: %s", userName);
wsprintf(text, L"Number of Digits: %d", objSystemInfo.dwNumberOfProcessors);
wsprintf(text, L"Number of Upper Case: %d", bit);
MessageBox(NULL, text , L"Sistem Bilgisi", MB_OK);
关于c++ - char类型的参数* lpcwstr类型的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27680065/