Я пытаюсь написать простой декодер UTF-8 для своего задания. Я довольно новичок в C++, так что потерпите меня здесь...
Я должен определить, действительна ли кодировка или нет, и в любом случае вывести значение символа UTF-8 в шестнадцатеричном формате. Допустим, я прочитал первый байт и использовал этот первый байт для определения количества байтов в этом символе UTF8. Проблема в том, что после того, как я прочитал первый байт, у меня возникли проблемы с установкой позиции ifstream на один байт и чтением всего символа UTF-8. Я пробовал seekg() и putback(), но всегда получаю ошибку BUS или какой-то странный вывод, который не соответствует моим тестовым данным. Пожалуйста, помогите, спасибо.
Несмотря на то, что я могу использовать peek() для первого байта, мне все равно нужно прочитать следующие байты, чтобы определить, действительна ли кодировка или нет. Проблема установки обратного положения потока все еще существует.