Имеет ли смысл попытаться открыть tty в двоичном режиме?

Я наткнулся на этот код C. Он использует freopen для повторного открытия стандартного ввода в двоичном режиме:

if (!isatty(STDIN_FILENO))
    freopen(NULL, "rb", stdin);

Я не понимаю, откуда взялся этот тест. Значит ли это, что нет смысла открывать терминал?

Что было бы не так с пропуском теста isatty, оставив

freopen(NULL, "rb", stdin);

1 ответ

isatty() функция является стандартом POSIX.

Я думаю, что имеет смысл сделать это, если вы хотите убедиться, что обрабатываете файл, который читается (я полагаю, через перенаправление ввода оболочки) в двоичном режиме.

Другие вопросы по тегам