这也与char32_t
任何intXX_t
. 该规范指出:
2.14.3.2
:
包含单个 c-char 的 char16_t 文字的值等于其 ISO 10646 代码点值,前提是该代码点可以用单个 16 位代码单元表示。
5.3.3.1
:
[..] 特别是 [..] sizeof(char16_t)、sizeof(char32_t) 和 sizeof(wchar_t) 是实现定义的
intXX_t
除了它们是“可选”(18.4.1
)的评论之外,我看不到有关这些类型的任何信息。
如果 a 不char16_t
保证是 2 个字节,它是否保证是 16 位(即使在 1 字节!= 8 位的架构上)?