mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк 

Златоуст.Ru

 

 

SETBUF(3S)                                           SETBUF(3S)

НАЗВАНИЕ 
        setbuf, setvbuf - назначение буферов для потока

СИНТАКСИС 
        #include 
        
        void setbuf (stream, buf)
        FILE *stream;
        char *buf;
        
        void setvbuf (stream, buf, type, size)
        FILE *stream;
        char *buf;
        int type, size;

ОПИСАНИЕ 
        Функция setbuf может быть использована  после  открытия
        потока,  но перед тем, как выполнена первая из процедур
        ввода/вывода. При этом массив, на который указывает ар-
        гумент buf, будет использоваться  вместо  автоматически
        назначаемых  буферов.  Если  значение  buf  равно NULL,
        ввод/вывод будет полностью небуферизованным.

        Требуемый размер буфера определяется константой BUFSIZ,
        заданной во включаемом файле :

             char buf [BUFSIZ];

        Функция setvbuf также  может  быть  использована  сразу
        после открытия потока, но перед тем, как выполнена пер-
        вая  из процедур ввода/вывода. Аргумент type определяет
        тип буферизации. Допустимы следующие типы  буферизации,
        описанные в :

        _IOFBF 
             Полная буферизация ввода/вывода.

        _IOLBF 
             Строчная буферизация вывода; буфер вывода выталки-
             вается  при выдаче символа перевода строки, запол-
             нении буфера или запросе на ввод.

        _IONBF 
             Полное отсутствие буферизации ввода/вывода.

        Если  значение  buf  не  равно NULL, массив, на который
        указывает buf, будет использоваться вместо автоматичес-
        ки назначаемых буферов. Аргумент size задает размер ис-
        пользуемого буфера. Константа BUFSIZ,  определенная  во
        включаемом файле , является разумным значением
        для  размера  буфера. Если ввод/вывод небуферизован, то
        аргументы buf и size игнорируются.

        По умолчанию вывод на терминал является строчно буфери-
        зованным, а весь остальной ввод/вывод буферизуется пол-
        ностью.

СМ. ТАКЖЕ 
        fopen(3S), getc(3S), malloc(3C), putc(3S), stdio(3S).

ДИАГНОСТИКА 
        Если  указано некорректное значение для аргументов type
        или  size, то функция setvbuf возвращает ненулевое зна-
        чение. В противном случае результат равен 0.

ПРИМЕЧАНИЯ 
        Распространенной ошибкой является выделение  под  буфер
        локальной  переменной блока без закрытия потока при вы-
        ходе из блока.



 

 

Бернадинер Марк Абрамович

Мое резюме

Компьютерная страничка

Ресурсы сети

Фотоальбом

 

 

 

mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк