cplusplus
.com
教程
参考
文章
论坛
C++
教程
参考
文章
论坛
参考
C 库
<cassert> (assert.h)
<cctype> (ctype.h)
<cerrno> (errno.h)
C++11
<cfenv> (fenv.h)
<cfloat> (float.h)
C++11
<cinttypes> (inttypes.h)
<ciso646> (iso646.h)
<climits> (limits.h)
<clocale> (locale.h)
<cmath> (math.h)
<csetjmp> (setjmp.h)
<csignal> (signal.h)
<cstdarg> (stdarg.h)
C++11
<cstdbool> (stdbool.h)
<cstddef> (stddef.h)
C++11
<cstdint> (stdint.h)
<cstdio> (stdio.h)
<cstdlib> (stdlib.h)
<cstring> (string.h)
C++11
<ctgmath> (tgmath.h)
<ctime> (time.h)
C++11
<cuchar> (uchar.h)
<cwchar> (wchar.h)
<cwctype> (wctype.h)
容器
C++11
<array>
<deque>
C++11
<forward_list>
<list>
<map>
<queue>
<set>
<stack>
C++11
<unordered_map>
C++11
<unordered_set>
<vector>
输入/输出
<fstream>
<iomanip>
<ios>
<iosfwd>
<iostream>
<istream>
<ostream>
<sstream>
<streambuf>
多线程
C++11
<atomic>
C++11
<condition_variable>
C++11
<future>
C++11
<mutex>
C++11
<thread>
其他
<algorithm>
<bitset>
C++11
<chrono>
C++11
<codecvt>
<complex>
<exception>
<functional>
C++11
<initializer_list>
<iterator>
<limits>
<locale>
<memory>
<new>
<numeric>
C++11
<random>
C++11
<ratio>
C++11
<regex>
<stdexcept>
<string>
C++11
<system_error>
C++11
<tuple>
C++11
<type_traits>
C++11
<typeindex>
<typeinfo>
<utility>
<valarray>
<cuchar> (uchar.h)
函数
C++11
c16rtomb
C++11
c32rtomb
C++11
mbrtoc16
C++11
mbrtoc32
参考
<cuchar>
头文件
<cuchar> (uchar.h)
Unicode 字符
该头文件为 16 位和 32 位字符提供支持,适用于 UTF-16 和 UTF-32 编码。
类型
在 C 语言中,此头文件定义了两个宏:
char16_t
和
char32_t
,它们分别映射到适当大小的无符号整数类型(与
uint_least16_t
和
uint_least32_t
相同)。
在 C++ 中,
char16_t
和
char32_t
是基本类型(因此,在 C++ 中此头文件不定义这些宏)。
宏
在 C++ 中,此头文件定义了以下宏:
宏
描述
__STD_UTF_16__
如果已定义,则
char16_t
类型的值具有 UTF-16 编码。
否则,
char16_t
的编码是未指定的。
(在 C11 中,当该宏被定义时,它会展开为
1
)
__STD_UTF_32__
如果已定义,则
char32_t
类型的值具有 UTF-32 编码。
否则,
char32_t
的编码是未指定的。
(在 C11 中,当该宏被定义时,它会展开为
1
)
函数
c16rtomb
将 16 位字符转换为多字节序列
(函数)
c32rtomb
将 32 位字符转换为多字节序列
(函数)
mbrtoc16
将多字节序列转换为 16 位字符
(函数)
mbrtoc32
将多字节序列转换为 32 位字符
(函数)
兼容性
此头文件最初由一份扩展 C99 的技术报告引入 C 语言,并得到 C 和 C++ 最新标准(均于 2011 年发布)的完全支持。