Provided by: manpages-pl-dev_4.27.0-1_all bug

NAZWA

       stdio - funkcje biblioteczne standardowego wejścia/wyjścia

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <stdio.h>

       FILE *stdin;
       FILE *stdout;
       FILE *stderr;

OPIS

       Biblioteka  standardowego  wejścia/wyjścia  zapewnia  prosty  i  wydajny interfejs buforowanych strumieni
       wejścia/wyjścia. Wejście  i  wyjście  jest  przypisywane  do  logicznych  strumieni  danych,  a  fizyczna
       charakterystyka  wejścia/wyjścia  jest ukrywana. Funkcje i makra wypisano poniżej; więcej informacji jest
       dostępnych w poszczególnych stronach podręcznika systemowego.

       Strumień jest wiązany z zewnętrznym plikiem (który może być fizycznym urządzeniem) przez otwarcie  pliku,
       co  może  wymagać  utworzenia  nowego  pliku.  Utworzenie  istniejącego  pliku  spowoduje odrzucenie jego
       wcześniejszej zawartości. Jeśli plik może obsłużyć żądania pozycjonowania (np. jest to plik na  dysku,  a
       nie terminal), to wskaźnik pozycji pliku związany ze strumieniem jest umieszczany na początku pliku (bajt
       zero),  chyba że plik otwarto w trybie dopisywania. W trybie dopisywania nie jest określone, czy wskaźnik
       pozycji zostanie umieszczony na początku, czy na końcu pliku. Wskaźnik  pozycji  jest  utrzymywany  przez
       kolejne  odczyty,  zapisy  i  żądania  pozycjonowania.  Wszelkie  wejście zachowuje się, jakby znaki były
       odczytywane przez kolejne wywołania do funkcji fgetc(3); wszelkie wyjście zachowuje się, jakby  wszystkie
       znaki były zapisywane przez kolejne wywołania do funkcji fputc(3).

       Plik  jest  oddzielany  od strumienia przez zamknięcie pliku. Strumienie wyjściowe są opróżniane (wszelka
       niezapisana zawartość bufora jest transferowana do środowiska gospodarza) przed oddzieleniem strumienia z
       pliku. Wartość wskaźnika do obiektu FILE jest nieokreślona po zamknięciu pliku (śmieci).

       Plik może być później otwarty ponownie, przez wykonanie tego samego lub innego programu, a jego zawartość
       odzyskana lub zmodyfikowana (jeśli może być spozycjonowany od początku). Jeśli główna funkcja powróci  do
       swego  pierwotnego  wywołującego  lub jeśli wywołano funkcję exit(3), wszystkie otwarte pliki są zamykane
       (stąd wszystkie strumienie  wyjściowe  są  opróżniane)  przed  zakończeniem  programu.  Inne  sposoby  na
       zakończenie programu, takie jak abort(3), nie troszczą się o poprawne zamknięcie plików.

       Przy  uruchomieniu programu, trzy strumienie tekstowe są predefiniowane i nie trzeba ich jawnie otwierać:
       standardowe wejście (ang. standard input –  do  odczytu  zwykłego  wejścia),  standardowe  wyjście  (ang.
       standard output – do wypisywania zwykłego wyjścia) oraz standardowe wyjście błędów (ang. standard error –
       do  wypisywania wyjścia diagnostycznego). Strumienie tę są nazywane skrótowo stdin, stdout i stderr. Przy
       otwarciu, strumień standardowego wyjścia błędów nie jest w  pełni  buforowany;  strumienie  standardowego
       wejścia  i  wyjścia  są  w  pełni  buforowane  wtedy  i tylko wtedy, gdy strumienie te nie odnoszą się do
       urządzenia interaktywnego.

       Strumienie wyjściowe odnoszące się do urządzeń terminali  są  domyślnie  zawsze  buforowane  do  wiersza;
       oczekujące  wyjście  do tych strumieni jest zapisywane automatycznie, gdy tylko odczytywany jest strumień
       wejściowy odnoszący się do urządzenia terminala. W  przypadkach,  gdy  po  wypisaniu  części  wiersza  na
       terminal  wyjściowy  dokonywana  jest  znaczna  ilość  obliczeń,  konieczne  jest  dokonanie fflush(3) na
       standardowym wyjściu przed zajęciem się obliczeniami, dzięki czemu pojawi się wyjście.

       Biblioteka stdio jest częścią biblioteki libc i funkcje są ładowane automatycznie w miarę  potrzeb  przez
       cc(1).  Rozdziały  SKŁADNIA  poniższych  stron  podręcznika  systemowego wskazują, których plików include
       należy użyć, jak wygląda deklaracja kompilatora dla funkcji oraz które zmienne zewnętrzne przyjmują.

       Nazwy, które zdefiniowano jako makra, nie mogą  być  użyte  ponownie,  przed  usunięciem  ich  aktualnych
       definicji  za  pomocą  #undef;  dotyczy  to:  BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_cuserid, L_ctermid,
       L_tmpnam, NULL, SEEK_END, SEEK_SET, SEEK_CUR, TMP_MAX, clearerr, feof,  ferror,  fileno,  getc,  getchar,
       putc,  putchar,  stderr, stdin, stdout. Istnieją wersje zaimplementowane jako funkcje następujących makr:
       feof, ferror, clearerr, fileno, getc, getchar, putc i  putchar;  zostaną  one  użyte,  jeśli  usunie  się
       definicje makr.

   Lista funkcji
       Funkcja              Opis
       ──────────────────────────────────────────────────────────────────────────────────────────────────────────
       clearerr(3)          sprawdza i zmienia stan strumienia
       fclose(3)            zamyka strumień
       fdopen(3)            funkcje otwarcia strumienia
       feof(3)              sprawdza i zmienia stan strumienia
       ferror(3)            sprawdza i zmienia stan strumienia
       fflush(3)            wypróżnia bufory strumienia
       fgetc(3)             odczytuje następny znak lub słowo ze strumienia wejściowego
       fgetpos(3)           zmienia pozycję w strumieniu
       fgets(3)             odczytuje wiersz ze strumienia
       fileno(3)            zwraca liczbowy deskryptor strumienia z argumentu
       fmemopen(3)          otwiera pamięć jako strumień
       fopen(3)             funkcje otwarcia strumienia
       fopencookie(3)       otwiera własny strumień
       fprintf(3)           konwertuje formatowanie wyjściowe
       fpurge(3)            wypróżnia bufory strumienia
       fputc(3)             wypisuje znak lub słowo do strumienia
       fputs(3)             wypisuje wiersz do strumienia
       fread(3)             odczytuje/zapisuje strumień binarny
       freopen(3)           funkcje otwarcia strumienia
       fscanf(3)            konwertuje format wejściowy
       fseek(3)             zmienia pozycję w strumieniu
       fsetpos(3)           zmienia pozycję w strumieniu
       ftell(3)             zmienia pozycję w strumieniu
       fwrite(3)            odczytuje/zapisuje strumień binarny
       getc(3)              odczytuje następny znak lub słowo ze strumienia wejściowego
       getchar(3)           odczytuje następny znak lub słowo ze strumienia wejściowego
       gets(3)              odczytuje wiersz ze strumienia
       getw(3)              odczytuje następny znak lub słowo ze strumienia wejściowego
       mktemp(3)            tworzy (unikatową) nazwę pliku tymczasowego
       open_memstream(3)    otwiera strumień bufora pamięci dynamicznej
       open_wmemstream(3)   otwiera strumień bufora pamięci dynamicznej
       perror(3)            systemowe komunikaty o błędach
       printf(3)            konwertuje formatowanie wyjściowe
       putc(3)              wypisuje znak lub słowo do strumienia
       putchar(3)           wypisuje znak lub słowo do strumienia
       puts(3)              wypisuje wiersz do strumienia
       putw(3)              wypisuje znak lub słowo do strumienia
       remove(3)            usuwa wpis katalogu
       rewind(3)            zmienia pozycję w strumieniu
       scanf(3)             konwertuje format wejściowy
       setbuf(3)            działania buforowania strumienia
       setbuffer(3)         działania buforowania strumienia
       setlinebuf(3)        działania buforowania strumienia
       setvbuf(3)           działania buforowania strumienia
       sprintf(3)           konwertuje formatowanie wyjściowe
       sscanf(3)            konwertuje format wejściowy
       strerror(3)          systemowe komunikaty o błędach
       sys_errlist(3)       systemowe komunikaty o błędach
       sys_nerr(3)          systemowe komunikaty o błędach
       tempnam(3)           funkcje pliku tymczasowego
       tmpfile(3)           funkcje pliku tymczasowego
       tmpnam(3)            funkcje pliku tymczasowego
       ungetc(3)            zwraca znak ze strumienia wejściowego
       vfprintf(3)          konwertuje formatowanie wyjściowe
       vfscanf(3)           konwertuje format wejściowy
       vprintf(3)           konwertuje formatowanie wyjściowe
       vscanf(3)            konwertuje format wejściowy
       vsprintf(3)          konwertuje formatowanie wyjściowe
       vsscanf(3)           konwertuje format wejściowy

STANDARDY

       C11, POSIX.1-2008.

HISTORIA

       C89, POSIX.1-2001.

ZOBACZ TAKŻE

       close(2), open(2), read(2), write(2), stdout(3), unlocked_stdio(3)

TŁUMACZENIE

       Tłumaczenie niniejszej strony podręcznika: 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.

Linux man-pages 6.9.1                            2 maja 2024 r.                                         stdio(3)