Книга: Основы программирования в Linux

Режимы вывода

Режимы вывода

Эти режимы управляют способом обработки выводимых символов, т.е. тем, как символы, полученные от программы, обрабатываются перед передачей на последовательный порт или экран. Как и следовало ожидать, многие из них — оборотная сторона режимов ввода. Есть несколько дополнительных флагов, которые связаны в основном с разрешениями для медленных терминалов, которым требуется время для обработки таких символов, как возвраты каретки. Почти все они либо избыточны (поскольку терминалы стали быстрее) или лучше обрабатываются с помощью базы данных характеристик терминала terminfo, которую вы примените позже в этой главе.

Вы управляете режимами вывода, устанавливая флаги элемента c_oflag структуры типа termios. В элементе c_oflag могут применяться следующие макросы:

OPOST — включает обработку вывода;

ONLCR — преобразует в символ перевода строки пару символов возврат каретки/перевод строки;

OCRNL — преобразует любой символ возврата каретки в выводе в символ перевода строки;

ONOCR — не выводит символ возврата каретки в столбце 0;

ONLRET — символ перехода на новую строку выполняет возврат каретки;

OFILL — посылает символы заполнения для формирования задержки;

OFDEL — применяет символ DEL как заполнитель вместо символа NULL;

NLDLY — выбор задержки для символа перехода на новую строку;

CRDLY — выбор задержки для символа возврата каретки;

TABDLY — выбор задержки для символа табуляции;

BSDLY — выбор задержки для символа Backspace;

VTDLY — выбор задержки для символа вертикальной табуляции;

FFDLY — выбор задержки для символа прокрутки страницы.

Примечание

Если флаг OPOST не установлен, все остальные флаги игнорируются.

Режимы вывода тоже обычно не используются, поэтому мы не будем их обсуждать в дальнейшем.

Оглавление книги


Генерация: 0.830. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз