Как правильно посчитать длину строки, содержащей кириллицу?
std::string str1 = "Test";
std::string str2 = "тест";
Я заметил, что
str1.size() = 4, а str2.size() = 8
Как это можно правильно посчитать?
Ответы (1 шт):
Автор решения: azhirov1991
→ Ссылка
Кириллица занимает 2 байта на каждый символ, т.к. используется Юникод. Латиница и прочие символы занимают по 1 байту на символ, т.к. кодировка ASCII.
Возможно, вам нужен не size(), а length().
Смотрите тут