- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
这也与 char32_t
和任何 intXX_t
有关。规范指出:
2.14.3.2
:
The value of a char16_t literal containing a single c-char is equal to its ISO 10646 code point value, provided that the code point is representable with a single 16-bit code unit.
5.3.3.1
:
[..] in particular [..] sizeof(char16_t), sizeof(char32_t), and sizeof(wchar_t) are implementation-defined
我看不到关于 intXX_t
类型的任何信息,除了它们是“可选”(18.4.1
) 的注释。
如果 char16_t
不保证为 2 字节,是否保证为 16 位(即使在 1 字节!= 8 位的架构上)?
最佳答案
Types char16_t and char32_t denote distinct types with the same size, signedness, and alignment as uint_least16_t and uint_least32_t, respectively, in , called the underlying types.
这意味着 char16_t 至少为 16 位(但可能更大)
但我也相信:
The value of a char16_t literal containing a single c-char is equal to its ISO 10646 code point value, provided that the code point is representable with a single 16-bit code unit.
提供相同的保证(尽管不太明确(因为您必须知道 ISO 10646 是 UCS(注意 UCS 兼容但与 Unicode 不完全相同))。
关于C++ char16_t 的大小取决于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6440812/
我是一名优秀的程序员,十分优秀!