Character sets and encodings
Min standard notice:
This page describes several character sets specified by the C++ standard.
# Notes
The standard names of some character sets are changed in C++23 via P2314R4.
Mapping from source file (other than a UTF-8 source file)(since C++23) characters to the basic character set(until C++23)translation character set(since C++23) during translation phase 1 is implementation-defined, so an implementation is required to document how the basic source characters are represented in source files.
# Defect reports
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| CWG 788 | C++98 | the values of the members of the execution character setswere implementation-defined, but were not locale-specific | they are locale-specific |
| CWG 1796 | C++98 | the representation of the null (wide) character inbasic execution (wide-)character set had all zero bits | only required value to be zero |