Чтобы задать текст в char16_t, перед символьным литералом указывается префикс u. 2 Он указывает на то, что литерал закодирован в UTF-16. 3
Например, для определения символа типа char16_t можно написать char16_t letter16 = u'Ы';
. 2
Также можно определять и строки символов этого типа: 2
char16_t utf16_str[] = u'UTF-16 string';
Для вывода строки типа char16_t применяется спецификатор %ls
, а для вывода отдельного символа — спецификатор %lc
. 2
При работе с char16t и UTF-16 можно использовать широкие строковые функции (wcout, wstring и другие), так как каждый char16t представляет 16-разрядный символ. 3