FERROR(3) | Руководство программиста Linux | FERROR(3) |
ИМЯ¶
clearerr, feof, ferror, fileno - проверка и сброс состояния потока
СИНТАКСИС¶
#include <stdio.h>
void clearerr(FILE *stream);
int feof(FILE *stream);
int ferror(FILE *stream);
int fileno(FILE *stream);
Требования
макроса
тестирования
свойств
для glibc (см.
feature_test_macros(7)):
fileno(): _POSIX_C_SOURCE
ОПИСАНИЕ¶
Функция clearerr() очищает индикаторы конца файла и ошибки потока, указанного в stream.
Функция feof() проверяет индикатор конца файла для потока, указанного в stream, возвращая при этом ненулевое значение, если индикатор установлен. Индикатор конца файла может быть очищен только функцией clearerr().
Функция ferror() проверяет индикатор ошибки для потока, указанного в stream, возвращая при этом ненулевое значение, если индикатор установлен. Индикатор ошибки может быть очищен только функцией clearerr().
The function fileno() examines the argument stream and returns its integer file descriptor.
Для неблокирующих аналогов, см. unlocked_stdio(3).
ОШИБКИ¶
Данные функции не должны завершаться с ошибкой и поэтому не устанавливают значение внешней переменной errno (тем не менее, в случае с fileno(), если аргумент не является корректным потоком, возвращается -1 и errno приравнивается значение EBADF).
АТРИБУТЫ¶
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
clearerr(), feof(), ferror(), fileno() | Безвредность в нитях | MT-Safe |
СООТВЕТСТВИЕ СТАНДАРТАМ¶
Функции clearerr(), feof() и ferror() соответствует стандартам C89, C99, POSIX.1-2001 и POSIX.1-2008.
Функция fileno() соответствует POSIX.1-2001 и POSIX.1-2008.
СМ. ТАКЖЕ¶
ЗАМЕЧАНИЯ¶
Эта страница является частью проекта Linux man-pages версии 4.16. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.
ПЕРЕВОД¶
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
15 сентября 2017 г. |