gpt4 book ai didi

c++ - 如何将整数添加到 LPWSTR

转载 作者:行者123 更新时间:2023-11-28 07:11:12 25 4
gpt4 key购买 nike

我有一个函数,它只接受一个 LPWSTR 作为参数。但是,我需要在它的末尾添加整数。

这是一个示例伪代码:

int theNumber = 5;
LPWSTR myLPWSTR = L"Number is: ";
/* Add theNumber to myLPWSTR */
myFunction(myLPWSTR);

如何做到这一点?

我已经尝试将 int 转换为 LPWSTR 然后连接它们,但我没有成功。我已经尝试了整个上午,但就是不知道该怎么做。

我试过,例如。 wsprintf、_itow_s、c_str 和我所知道的几乎所有东西——但就是做不到,这让人非常沮丧。

有人请帮助。

最佳答案

假设该函数确实采用 LPWSTR 而不是 LPCWSTR(即它可以修改传入的字符串),您必须执行如下操作:

int theNumber = 5;
std::wostringstream s;
s << L"Number is: " << theNumber;
std::wstring str = s.str();
std::vector<wchar_t> buf(str.begin(), str.end());
buf.push_back(0);
myFunctions(&buf[0]);

这是必要的,因为您需要提供一个正确的 nul 终止和可修改的 wchar_t 缓冲区。 str.c_str() 以 nul 结尾但不可修改。 &str[0] 是可修改的,但不是(保证是)nul 终止的。

关于c++ - 如何将整数添加到 LPWSTR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20947486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com