Character sets and encodings
Table des matières |
Jeu de caractères de base
Le jeu de caractères de base est constitué des 95 caractères suivants :
| Point de code | Caractère | Glyphe |
|---|---|---|
| U+0009 | Tabulation de caractère | |
| U+000B | Tabulation de ligne | |
| U+000C | Saut de page (FF) | |
| U+0020 | Espace | |
| U+0021 | Point d'exclamation |
!
|
| U+0022 | Guillemet |
"
|
| U+0023 | Croisillon |
#
|
| U+0025 | Signe pour cent |
%
|
| U+0026 | Esperluette |
&
|
| U+0027 | Apostrophe |
'
|
| U+0028 | Parenthèse gauche |
(
|
| U+0029 | Parenthèse droite |
)
|
| U+002A | Astérisque |
*
|
| U+002B | Signe plus |
+
|
| U+002C | Virgule |
,
|
| U+002D | Trait d'union moins |
-
|
| U+002E | Point |
.
|
| U+002F | Barre oblique |
/
|
| U+0030 .. U+0039 | Chiffre zéro .. neuf |
0 1 2 3 4 5 6 7 8 9
|
| U+003A | Deux-points |
:
|
| U+003B | Point-virgule |
;
|
| U+003C | Signe inférieur à |
<
|
| U+003D | Signe égal |
=
|
| U+003E | Signe supérieur à |
>
|
| U+003F | Point d'interrogation |
?
|
| U+0041 .. U+005A | Lettre majuscule latine A .. Z |
A B C D E F G H I J K L M
|
| U+005B | Crochet gauche |
[
|
| U+005C | Barre oblique inverse |
\
|
| U+005D | Crochet droit |
]
|
| U+005E | Accent circonflexe |
^
|
| U+005F | Trait bas |
_
|
| U+0061 .. U+007A | Lettre minuscule latine a .. z |
a b c d e f g h i j k l m
|
| U+007B | Accolade gauche |
{
|
| U+007C | Barre verticale |
|
|
| U+007D | Accolade droite |
}
|
| U+007E | Tilde |
~
|
Contrairement au C++, le caractère U+000A SAUT DE LIGNE (LF) n'est pas inclus dans le jeu de caractères de base. Au lieu de cela, il doit exister un moyen d'indiquer la fin de chaque ligne de texte dans le fichier source et le document traite un tel indicateur de fin de ligne comme s'il s'agissait d'un unique caractère de nouvelle ligne.
Le jeu de caractères de base est également connu sous le nom de basic source character set .
Jeu de caractères d'exécution de base
Le jeu de caractères d'exécution de base contient tous les membres du jeu de caractères de base, plus les caractères suivants :
| Unité de code | Caractère |
|---|---|
| U+0000 | Nul |
| U+0007 | Sonnerie |
| U+0008 | Retour arrière |
| U+000A | Saut de ligne (LF) |
| U+000D | Retour chariot (CR) |
Pour chaque jeu de caractères d'exécution de base, les valeurs des membres doivent être non négatives et distinctes les unes des autres. Dans les jeux de caractères de base source et d'exécution, la valeur de chaque caractère après 0 dans la liste ci-dessus des chiffres décimaux doit être supérieure d'une unité à la valeur du précédent. Le caractère NULL U+0000 a la valeur 0.
La représentation de chaque membre des jeux de caractères d'exécution de base tient dans un octet.
En C++, le jeu de caractères d'exécution de base est également connu sous le nom de jeu de caractères littéraux de base et jeu de caractères larges d'exécution de base .
Encodages des littéraux
L' encodage littéral est un mappage défini par l'implémentation des caractères du jeu de caractères d'exécution vers les valeurs dans une constante de caractère ou un littéral de chaîne sans préfixe d'encodage. Il prend en charge un mappage de toutes les valeurs du jeu de caractères d'exécution de base vers l'encodage défini par l'implémentation. Il peut contenir des séquences de caractères multioctets.
|
Les caractères suivants ne font pas partie du jeu de caractères d'exécution de base, mais ils doivent être encodés sur un seul octet dans une constante de caractère ordinaire ou un littéral de chaîne ordinaire.
|
(depuis C23) |
L'
encodage littéral étendu
est une correspondance définie par l'implémentation des caractères du jeu de caractères d'exécution vers les valeurs dans une constante de caractère ou un littéral de chaîne préfixé par
L
. Il prend en charge une correspondance de toutes les valeurs du jeu de caractères d'exécution de base vers l'encodage défini par l'implémentation. Si une implémentation ne définit pas
__STDC_MB_MIGHT_NEQ_WC__
, la correspondance produit des valeurs identiques à l'encodage littéral pour toutes les valeurs du jeu de caractères d'exécution de base. Une ou plusieurs valeurs peuvent correspondre à une ou plusieurs valeurs du jeu de caractères d'exécution étendu.
|
L'encodage UTF-8 est utilisé pour mapper les caractères du jeu de caractères d'exécution vers une
Un encodage défini par l'implémentation
(jusqu'à C23)
L'encodage UTF-16
(depuis C23)
est utilisé pour mapper les caractères du jeu de caractères d'exécution vers une
Un encodage défini par l'implémentation
(jusqu'à C23)
L'encodage UTF-32
(depuis C23)
est utilisé pour mapper les caractères du jeu de caractères d'exécution vers une
|
(depuis C11) |
Voir aussi
| Table ASCII | |
|
Documentation C++
pour
Jeux de caractères et encodages
|