在 Visual C++ 中创建 UTF-8 字符串文字,您可以使用宽字符字符串字面量(即带有前缀 L
的字符串),并将其转换为 UTF-8 编码。以下是一个简单的示例:
#include<iostream>
#include<string>
#include<locale>
#include <codecvt>
int main() {
// 创建宽字符字符串字面量
std::wstring_view wide_str = L"Hello, 世界!";
// 创建一个 UTF-8 转换器
std::wstring_convert<std::codecvt_utf8<wchar_t>> converter;
// 将宽字符串转换为 UTF-8 字符串
std::string utf8_str = converter.to_bytes(wide_str.data());
// 输出 UTF-8 字符串
std::cout<< utf8_str<< std::endl;
return 0;
}
在这个示例中,我们首先创建了一个宽字符字符串 L"Hello, 世界!"
,然后使用 std::wstring_convert
和 std::codecvt_utf8
将其转换为 UTF-8 编码的字符串。最后,我们将 UTF-8 字符串输出到控制台。
请注意,这个示例使用了 C++11 标准中的一些功能,如 std::wstring_view
和 std::wstring_convert
。如果您使用的是早期的 C++ 标准,可能需要使用不同的方法来实现相同的功能。
领取专属 10元无门槛券
手把手带您无忧上云