E2558 La valeur '\U08x' n'est pas dans la constante caractère char16 t (C++)

De RAD Studio
Aller à : navigation, rechercher

Remonter à Erreurs et avertissements du compilateur (C++) - Index

Le caractère char16_t est situé hors de l'étendue des caractères char16_t. Certains caractères UNICODE sont situés hors de la zone 16 bits. Ces caractères ne peuvent pas être stockés dans le type char16_t,


Exemple :


//U+10919 PHOENICIAN NUMBER ONE HUNDRED
const char16_t *sl = u"\U00010919"; //valid. s1 points 0xD802, 0xDD19 and 0x000 as null-terminator
const char16_t c1 =u'\U00010919'; // error: E2558 - 0x10919 is larger than 16-bit value.