Использовать буферизацию строк в потоке
#include <unix.h>int setlinebuf( FILE *iop );
libc
Функции setbuffer() и setlinebuf() назначают буферизацию потоку. Доступны следующие типы буферизации:
Для форсирования записи блока используется вызов fflush(). Как правило, все файлы имеют блочную буферизацию. Буфер создается через malloc(), когда для файла первый раз вызывается getc() или putc(). Если стандартный поток stdout ссылается на терминал, то он имеет строчную буферизацию. Стандартный поток stderr по умолчанию небуферизован.
Функция setlinebuf() используется для изменения типа буферизации потока с блочного или небуферизованного на строчную буферизацию. В отличие от функции setbuffer(), функцию setlinebuf() можно вызвать в любое время, когда поток iop активен.
Функция freopen() позволяет изменить тип буферизации потока с небуферизованного или строчного на блочную буферизацию. Для изменения типа буферизации потока с блочного или строчного на небуферизованный используется функция freopen(), а затем вызов setbuf() с параметром buffer равным NULL
.
Не содержит полезного значения.
Unix
fclose(), fflush(), fopen(), fread(), freopen(), getc(), malloc(), printf(), putc(), puts(), setbuf(), setbuffer(), setvbuf()
Предыдущий раздел: Описание API системной библиотеки