setbuf()

Указать буфер, который будет использоваться потоком ввода-вывода

Прототип:

#include <stdio.h>
void setbuf( FILE *fp,
char *buffer );

Аргументы:

fp
Поток, который вы хотите связать с буфером.
buffer
NULL или указатель на буфер.

Библиотека:

libc

Описание:

Функция setbuf() связывает буфер buffer с потоком, указанным в fp. Вызов setbuf() должен происходить после открытия потока, но перед выполнением операций чтения, записи или поиска.

Если buffer равен NULL, весь ввод/вывод не буферизуется. В противном случае buffer должен указывать на массив длиной не менее BUFSIZ символов.

Примеры:

#include <stdio.h>
#include <stdlib.h>
int main( void )
{
char *buffer;
FILE *fp;
buffer = (char *)malloc( BUFSIZ );
if ( buffer == NULL )
{
return (EXIT_FAILURE);
}
fp = fopen( "some_file", "r" );
setbuf( fp, buffer );
/* . */
fclose( fp );
free( buffer );
return (EXIT_SUCCESS);
}

Классификация:

ANSI, POSIX 1003.1

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

Тематические ссылки:

fopen(), setvbuf()




Предыдущий раздел: Описание API системной библиотеки