我正在使用C / C ++,是否有任何Windows函数或任何非常快速的方法从Title中的任何类型转换为const WCHAR *?
所以我有一个大案例,我检查我的数据是什么类型,进入某个分支,我需要将该数据转换为WCHAR *。
所以,如果我有的话 21,我希望它是L“21”。 32.322 => L “32.322” 等
我可以手动完成但是如果有更快的方法我会更喜欢它!这些转换似乎在较低级别上发生了很多。
谢谢!
答案 0 :(得分:1)
如果您使用的是C ++ 11或C ++ 14,则可以使用std::to_wstring
。否则以这种方式使用'swprintf':
创建一个具有适当数组大小的宽字符串缓冲区:
wchar_t wstr[32];
要转换为整数,请使用'swprintf'和'%d'格式:
swprintf(wstr, L"%d", 21);
现在'wstr'包含你的“21”
要转换为浮点数,请使用'%。* f'格式的'swprintf'。我们将在小数点后使用最多3位数(默认情况下,这是6)。所以它需要更少的'wchar_t'来存储:
swprintf(wstr, L"%.*f", 3, 32.322f);
现在'wstr'包含你的“32.322”
有关'swprintf'
的更多信息,请查看以下MSDN页面