Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Добавлю: codepoint в utf-8 всегда начинается с байта с двумя старшими единицами, а продолжается — несколькими байтами с одной старшей единицей и потом нулем.
Так что проверку надо было писать вот так:
if (SECU_GetWrapEnabled() && column > 76 && (val <= 0x7F || val => 0xC0)) {Или вот так (эквивалентно):
if (SECU_GetWrapEnabled() && column > 76 && (val & 0xC0) != 0x80)) {Но еще правильнее — увеличивать column только после окончания codepoint, а не после каждого байта (но для иероглифов вроде бы увеличивать надо не на 1, а не 2). Тут так просто код я уже не напишу.
Пакет Network Security Services и утилита Pretty-print