gpt4 book ai didi

c++ - "UTF-16"和 "std::wstring"有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 15:39:20 29 4
gpt4 key购买 nike

这两种字符串存储格式有什么区别吗?

最佳答案

std::wstringwchar_t 的容器。 wchar_t 的大小未指定 — Windows 编译器倾向于使用 16 位类型,Unix 编译器倾向于使用 32 位类型。

UTF-16是一种在 16 位整数序列中编码 Unicode 代码点序列的方法。

使用 Visual Studio,如果您使用不包含 BMP 之外的字符的宽字 rune 字(例如 L"Hello World") ,你最终会得到 UTF-16,但大多数情况下这两个概念是不相关的。如果您使用 BMP 之外的字符,std::wstring 将不会翻译 surrogate pairs为您转换为 Unicode 代码点,即使 wchar_t 是 16 位。

关于c++ - "UTF-16"和 "std::wstring"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4247236/

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