Man page - stdio_ext(3)

Packages contains this manual

Available languages:

en fr es ja ru ro

Manual

stdio_ext

НАИМЕНОВАНИЕ
БИБЛИОТЕКА
ОБЗОР
ОПИСАНИЕ
АТРИБУТЫ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

__fbufsize, __flbf, __fpending, __fpurge, __freadable, __freading, __fsetlocking, __fwritable, __fwriting, _flushlbf - интерфейс к структуре stdio FILE

БИБЛИОТЕКА

Стандартная библиотека языка C ( libc , -lc )

ОБЗОР

#include <stdio.h>
#include <stdio_ext.h>

size_t __fbufsize(FILE * stream );
size_t __fpending(FILE *
stream );
int __flbf(FILE *
stream );
int __freadable(FILE *
stream );
int __fwritable(FILE *
stream );
int __freading(FILE *
stream );
int __fwriting(FILE *
stream );
int __fsetlocking(FILE *
stream , int type );
void _flushlbf(void);
void __fpurge(FILE *
stream );

ОПИСАНИЕ

В Solaris были представлены процедуры, представляющие переносимый способ доступа к внутренностям структуры FILE , в glibc они также реализованы.

Функция __fbufsize () возвращает размер буфера, использующегося в данным момент указанным потоком.

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

Функция __flbf () возвращает ненулевое значение, если поток буферизируется построчно, и ноль в противном случае.

Функция __freadable () возвращает ненулевое значение, если поток доступен для чтения, и ноль в противном случае.

Функция __fwritable () возвращает ненулевое значение, если поток доступен для записи, и ноль в противном случае.

Функция __freading () возвращает ненулевое значение, если поток доступен только для чтения, или если последняя операция с потоком была операцией чтения, и ноль в противном случае.

Функция __fwriting () возвращает ненулевое значение, если поток доступен только для записи (или открыт только для добавления), или если последняя операция с потоком была операцией записи, и ноль в противном случае.

Функция __fsetlocking () может быть использована для выбора желаемого типа блокировки потока. Она возвращает текущий тип. В аргументе type может быть указано одно из трёх значений:
FSETLOCKING_INTERNAL

Выполнять неявную блокировку при каждой операции с заданным потоком (за исключением *_unlocked). Действует по умолчанию.

FSETLOCKING_BYCALLER

Вызывающий сам выполняет блокировку (возможно, с помощью flockfile (3), если есть несколько нитей), и процедуры stdio не выполняют блокировки до тех пор, пока состояние не сбросится в FSETLOCKING_INTERNAL .

FSETLOCKING_QUERY

Не изменять тип блокировки (только вернуть текущий).

Функция _flushlbf () сбрасывает (flushes) все буферизируемые построчно потоки (например для того, чтобы вывести всё на терминал перед чтением ввода с клавиатуры).

Функция __fpurge () удаляет содержимое поточного буфера.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes (7).

Image grohtml-606132-1.png

СМОТРИТЕ ТАКЖЕ

flockfile (3), fpurge (3)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .