Что означает код errno 84 (EILSEQ) в Linux?

 
Также может означать:
КонстантаТипОС
ERROR_OUT_OF_STRUCTURESОшибка WindowsWindows
EOVERFLOWerrnomacOS
ELIBBADerrnoSolaris
LM_SERVER_INTERNAL_ERRORКод BSODWindows
Предыдущий Следующий
ELIBACC EOVERFLOW

EILSEQ

Что означает EILSEQ в Linux

EILSEQ: Недопустимая последовательность байтов. Сохраняйте исходные байты и активные locale/encoding rules: замена входа Unicode-строкой после неудачного преобразования уничтожает доказательство неправильной последовательности.

Диагностика

Сохраните исходные bytes в шестнадцатеричном виде, выбранную locale/кодовая страница и точную функцию преобразования.

  • Найдите первый недопустимый byte offset и проверьте границы multibyte sequence, не заменяя данные символом replacement до диагностики.
  • Сравните поведение на минимальном фрагменте входа с явно заданной кодировкой, чтобы исключить зависимость от process locale.

Особенности Linux

В Linux EILSEQ часто связан с multibyte/wide-character conversion и текущей locale. Для mbrtowc(), wcrtomb() и родственных функций сохраните входные байты, LC_CTYPE и состояние mbstate_t. Если преобразование выполняет iconv(), отдельно фиксируйте исходную и целевую encoding: ошибка указывает на недопустимую последовательность для выбранного преобразования.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.