РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
62 of 815 menu

Тип char8_t

Тип char8_t - это целочисленный тип, предназначенный для представления одного символа в кодировке UTF-8. Он был добавлен в стандарт C++20. Размер типа char8_t составляет ровно 8 бит (один байт), а его значения могут принимать диапазон от 0 до 255. В отличие от обычного char, тип char8_t имеет беззнаковую природу и не зависит от платформы. Он используется для работы с UTF-8 строками и литералами, например, u8"text". Переменная типа char8_t хранит один код UTF-8, который может быть частью многобайтового символа.

Синтаксис

char8_t name = value;

Пример

Давайте объявим переменную типа char8_t и выведем её числовое значение:

#include <iostream> using namespace std; int main() { char8_t ch = u8'a'; cout << static_cast<int>(ch) << endl; return 0; }

Результат выполнения кода:

97

Пример

Давайте создадим UTF-8 строку с помощью литерала u8"abcde" и выведем каждый символ в виде числа:

#include <iostream> using namespace std; int main() { const char8_t* str = u8"abcde"; for (int i = 0; str[i] != u8'\0'; i++) { cout << static_cast<int>(str[i]) << " "; } cout << endl; return 0; }

Результат выполнения кода:

97 98 99 100 101

Пример

Давайте проверим размер типа char8_t с помощью оператора sizeof:

#include <iostream> using namespace std; int main() { cout << sizeof(char8_t) << endl; return 0; }

Результат выполнения кода:

1

Смотрите также

  • тип char,
    который хранит один символ
  • тип wchar_t,
    который хранит широкий символ
  • тип byte,
    который представляет один байт
  • тип unsigned,
    который задаёт беззнаковый целочисленный тип
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить