首页 > 解决方案 > 声明 bytes > 2 的多字节字符数组

问题描述

如何声明一个多字节字符数组,其中每个字符表示 3 或 4 个字节?

我知道我可以做到:char var[] = "AA"; which will write to memory 6161,我可以做到wchar var[] = L"AA";which will do 00610061。如何在 C 或 C++ 中声明更宽的字符数组?

是否有任何其他前缀,如L指示编译器这样做?

标签: c++ccharacter-encoding

解决方案


C 和 C++ 都提供char32_t. 在Cchar32_t中是与uint_least32_t. 在C++char32_t中,具有与 相同的大小、符号和对齐方式std::uint_least32_t,但是是不同的类型。

它们都可以像这样使用

char32_t string[] = U"some text";

推荐阅读