setvbuf()
#include <stdio.h> int setvbuf(FILE *stream, char *buf, int mode, size_t size);
Описание
Позволяет задать буфер, его размер и режим работы с указанным потоком
Функция setvbuf() позволяет программисту задать буфер, его размер и режим работы с указанным потоком. Символьный массив, адресуемый параметром buf, используется в качестве буфера потока для операций ввода-вывода. Размер буфера устанавливается с помощью параметра size, а режим mode определяет, как будет выполняться буферизация. Если параметр buf нулевой, функция setvbuf() выделяет собственный буфер. В версии С99 к параметрам stream и buf применен квалификатор restrict. Возможными значениями параметра mode являются константы _IOFBF, _IONBF и _IOLBF, которые определены в заголовочном файле <stdio.h>. Когда параметр mode установлен равным значению _IOFBF, буферизация выполняется в расчете на полный объем буфера. Если mode равен значению _IOLBF, поток будет буферизирован построчно, т.е. буфер будет сбрасываться при каждой записи в выходной поток символа новой строки, а при чтении из входного потока появление символа новой строки приведет к прекращению подкачки в буфер. В любом случае буфер сбрасывается по окончании заполнения. Если установлен режим, определяемый значением _IONBF, поток вообще не буферизируется. Функция setvbuf() возвращает нуль при успешном выполнении и ненулевое значение в противном случае. |
Нет комментариев. Оставить комментарий: |