【发布时间】:2013-11-22 00:57:15
【问题描述】:
如下代码:
int a = 16;
wchar_t *buffer = {0};
wsprintf(buffer,L"%d", a);
MessageBox(NULL, buffer, buffer, MB_OK);
我想将 int 转换为 LPCWSTR 以便放置 MessageBox。 我真的是使用 wsprintf 的新手。任何人都可以帮助我使用此功能为我解释清楚??? (拜托,我也看过 MSDN 但还是不太清楚)
我的意思是,我想在 MessageBox 中打印“16”
【问题讨论】:
-
wsprintf与sprintf()具有相同的要求。你需要一个有效的地址来写你的输出,而且你肯定不会用wchar_t *buffer = {0};提供它,如果你不知道,wsprintf()是 Microsoft Windows 的主义,不要与 @ 混淆987654321@,标准库中sprintf()的宽字符版本。