使用wsprintf将int转换为LPCWSTR

时间:2013-11-10 02:57:17

标签: c++ api

如下代码:

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”

1 个答案:

答案 0 :(得分:6)

您将buffer初始化为nullptr。只需创建一个wchar_t的数组,为你分配足够的空间,你就可以摆脱困境:

int a = 16;
wchar_t buffer[256];
wsprintfW(buffer, L"%d", a);
MessageBoxW(nullptr, buffer, buffer, MB_OK);