- cuchar[meta header]
- cpp11[meta cpp]
<cuchar>ヘッダでは、マルチバイト文字とUnicode文字 (char8_t、char16_t、char32_t) との変換関数を定義する。これらの機能は、std名前空間に属することを除いてC言語の標準ライブラリ<uchar.h>ヘッダと同じである (ただしchar8_t、char16_t、char32_t型は宣言しない)。
| 名前 | 説明 | 対応バージョン |
|---|---|---|
size_t |
符号なし整数型 | C++11 |
mbstate_t |
マルチバイト文字とワイド文字の変換状態を保持する型 | C++11 |
| 名前 | 説明 | 対応バージョン |
|---|---|---|
mbrtoc8 |
マルチバイト文字を、UTF-8文字 (char8_t) に変換する |
C++26 |
c8rtomb |
UTF-8文字 (char8_t) を、マルチバイト文字に変換する |
C++26 |
mbrtoc16 |
マルチバイト文字を、UTF-16文字 (char16_t) に変換する |
C++11 |
c16rtomb |
UTF-16文字 (char16_t) を、マルチバイト文字に変換する |
C++11 |
mbrtoc32 |
マルチバイト文字を、UTF-32文字 (char32_t) に変換する |
C++11 |
c32rtomb |
UTF-32文字 (char32_t) を、マルチバイト文字に変換する |
C++11 |
| マクロ | 説明 | 対応バージョン |
|---|---|---|
__STDC_VERSION_UCHAR_H__ |
<cuchar>が提供するC標準ライブラリ機能のバージョン (202311L) |
C++26 |
- C++11
- P0175R1 Synopses for the C library
- P3348R4 C++26 should refer to C23 not C17
- C++26がC23を参照するようになり、
mbrtoc8・c8rtomb・__STDC_VERSION_UCHAR_H__が追加された
- C++26がC23を参照するようになり、