Страницы

Поиск по вопросам

вторник, 24 декабря 2019 г.

Как вычислить ucs-код для для однобайтового символа при работе с utf-8?

#utf_8 #cpp


Вычислить код ucs для двухбайтового символа можно так (решение @avp). Что мне делать,
если нужно вычислить код однобайтовых символов? Для моей задачи требуется определить,
является ли символ английского или русского алфавита буквой. С русским всё понятно
(как известно, кириллица кодируется двумя байтами). Как быть с ascii-символами? 
    


Ответы

Ответ 1



Лимит комментариев вышел — могу лишь добавить ответ. @milkyway_: Смотрите. Вы заводите указатель на char, и передаёте указатель на этот указатель вторым параметром. Инициализировать сам указатель не надо. Имея указатель на ваш указатель, процедура может изменить его. (Это стандартный метод возвращения значений из функции в C.) Согласно описанию, после возвращения из процедуры этот самый указатель будет указывать на первый неразобранный байт входной строки (то есть, на начало следующего UTF8-символа).

Комментариев нет:

Отправить комментарий