Scroll to navigation

ferror(3) Library Functions Manual ferror(3)

NAZWA

clearerr, feof, ferror - sprawdza i zmienia stan strumienia

BIBLIOTEKA

Standardowa biblioteka C (libc, -lc)

SKŁADNIA

#include <stdio.h>
void clearerr(FILE *stream);
int feof(FILE *stream);
int ferror(FILE *stream);

OPIS

Funkcja clearerr() usuwa znaczniki końca pliku i błędu dla strumienia wskazywanego przez stream.

Funkcja feof() sprawdza znacznik końca pliku dla strumienia wskazywanego przez stream, zwracając wartość niezerową, jeśli jest ustawiony. Znacznik końca pliku może zostać usunięty tylko za pomocą funkcji clearerr().

Funkcja ferror() sprawdza znacznik błędu dla strumienia wskazywanego przez stream, zwracając wartość niezerową, jeśli jest ustawiony. Znacznik błędu może zostać usunięty tylko za pomocą funkcji clearerr().

Informacje o nieblokujących odpowiednikach znajdują się w unlocked_stdio(3).

WARTOŚĆ ZWRACANA

Funkcja feof() zwraca wartość niezerową, gdy dla stream ustawiony jest znacznik końca pliku; w przeciwnym przypadku zwraca zero.

Funkcja ferror() zwraca wartość niezerową, gdy dla stream ustawiony jest znacznik błędu; w przeciwnym przypadku zwraca zero.

BŁĘDY

Funkcje te nie powinny nigdy zawieść i nie ustawiają errno.

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

Interfejs Atrybut Wartość
clearerr(), feof(), ferror() Bezpieczeństwo wątkowe MT-bezpieczne

STANDARDY

C11, POSIX.1-2008.

HISTORIA

C89, POSIX.1-2001.

UWAGI

POSIX.1-2008 określa, że funkcje te nie powinny zmieniać wartości errno, jeśli stream jest prawidłowy.

ZASTRZEŻENIA

Programy powinny zwykle odczytywać wartość zwracaną funkcji wejściowej, takiej jak fgetc(3), przed używaniem funkcji z rodziny feof(3). Jedynie po zwróceniu przez funkcję wartości EOF, nabiera sensu rozróżnianie pomiędzy końcem pliku a błędem, za pomocą feof(3) lub ferror(3).

ZOBACZ TAKŻE

open(2), fdopen(3), fileno(3), stdio(3), unlocked_stdio(3)

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Adam Byrtek <alpha@irc.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 maja 2024 r. Linux man-pages 6.8