table of contents
- bookworm 1:4.18.1-1
- bookworm-backports 1:4.24.0-2~bpo12+1
- testing 1:4.24.0-2
- unstable 1:4.24.0-2
fclose(3) | Library Functions Manual | fclose(3) |
NAZWA¶
fclose - zamyka strumień
BIBLIOTEKA¶
Standardowa biblioteka C (libc, -lc)
SKŁADNIA¶
#include <stdio.h>
int fclose(FILE *stream);
OPIS¶
Funkcja fclose() odłącza strumień stream od pliku (zapisując wszystkie zbuforowane dane wyjściowe za pomocą fflush(3)) i zamyka deskryptor pliku przypisanego do strumienia.
Zachowanie funkcji fclose() nie jest zdefiniowane, jeśli parametr stream nie jest poprawnym wskaźnikiem lub jeśli został już przekazany do wcześniejszego wywołania fclose().
WARTOŚĆ ZWRACANA¶
Jeśli funkcja zakończyła się pomyślnie, zwracane jest 0. W przeciwnym przypadku zwracana jest wartość EOF, a errno przyjmuje wartość, wskazującą na rodzaj błędu. W każdym przypadku następna próba dostępu (włączając w to kolejne wywołanie fclose()) do strumienia prowadzi do niezdefiniowanego zachowania.
BŁĘDY¶
- EBADF
- Deskryptor pliku określający stream nie jest poprawny.
Funkcja fclose() może także zawieść i ustawić wartość errno na dowolny błąd wymieniony w opisie funkcji close(2), write(2) lub fflush(3).
ATRYBUTY¶
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs | Atrybut | Wartość |
fclose() | Bezpieczeństwo wątkowe | MT-bezpieczne |
STANDARDY¶
C11, POSIX.1-2008.
HISTORIA¶
C89, POSIX.1-2001.
UWAGI¶
Należy zauważyć, że fclose() opróżnia jedynie bufory w przestrzeni użytkownika obsługiwane przez bibliotekę C. Aby upewnić się, że dane zostały fizycznie zapisane na dysku, należy zrzucić również bufory jądra, np. za pomocą sync(2) lub fsync(2).
ZOBACZ TAKŻE¶
close(2), fcloseall(3), fflush(3), fileno(3), fopen(3), setbuf(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> i Robert Luberda <robert@debian.org>
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 |