Converting Strings to Wstrings in C
您的问题涉及将字符串 s 转换为 C 中的宽字符串 ws 。虽然有些方法不能完全保留原始内容,但有一个使用标准库组件的有效解决方案。
问题描述
给定一个字符串 s,您想要将其内容分配给 wstring ws。然而,之前的尝试导致转换失真或不准确。
解决方案:标准库转换
#include <locale> #include <codecvt> #include <string> std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter; std::wstring ws = converter.from_bytes(s);
说明
此代码使用标准库函数来执行
通过使用这种编码转换,s 中的原始 Unicode 字符被准确地保留在 ws 中。
以上是如何可靠地将 C 字符串转换为宽字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!