NAZWA¶
fgetc, fgets, getc, getchar, gets, ungetc - wprowadzanie znaków i
  łańcuchów znakowych
SKŁADNIA¶
#include <stdio.h>
 
int fgetc(FILE *stream);
char *fgets(char *s, int size, FILE *stream);
int getc(FILE *stream);
int getchar(void);
char *gets(char *s);
int ungetc(int c, FILE *stream);
OPIS¶
 Uwaga! To tłumaczenie może być nieaktualne!
fgetc() odczytuje następny znak ze 
stream i zwraca go jako
  rzutowanie 
unsigned char na 
int, lub 
EOF w przypadku
  końca pliku albo błędu.
getc() jest równoważne 
fgetc() z tym wyjątkiem,
  że może być zaimplementowane jako makro, które wylicza
  
stream więcej niż raz.
getchar() jest równoważne
  
getc(stdin).
gets() odczytuje linię z 
stdin do bufora wskazywanego przez
  
s aż do kończącego znaku nowej linii lub 
EOF,
  który jest zastępowany przez 
'\0'. Nie jest sprawdzane
  przepełnienie bufora (zobacz 
BŁĘDY poniżej).
fgets() odczytuje co najwyżej o jeden mniej niż 
size
  znaków ze 
stream i umieszcza je w buforze wskazywanym przez
  
s. Odczyt kończy się po napotkaniu 
EOF lub znaku nowej
  linii. Jeśli odczytany zostanie znak nowej linii, jest on przechowywany w
  buforze. Po ostatnim znaku w buforze jest umieszczany 
'\0'.
ungetc() odkłada 
c z powrotem do 
stream, rzutowane na
  
unsigned char, o ile jest to możliwe dla następnych operacji
  odczytu. Odłożone znaki będą zwracane w odwrotnej
  kolejności; tylko jedno pomyślne odłożenie jest
  zagwarantowane.
Wywołania opisanych tu funkcji mogą być mieszane między
  sobą jak i z wywołaniami innych funkcji wejściowych z
  biblioteki 
stdio operujących na tym samym strumieniu
  wejściowym.
Informacje o nieblokujących odpowiednikach znajdują się w
  
unlocked_stdio(3).
WARTOŚĆ ZWRACANA¶
fgetc(),
 getc() i
 getchar() zwracają znak odczytany
  jako rzutowanie 
unsigned char na 
int lub 
EOF w przypadku
  końca pliku lub błędu.
gets() i 
fgets() zwracają 
s w przypadku
  pomyślnego zakończenia, a 
NULL w przypadku błędu
  oraz gdy wystąpi koniec pliku, a nie zostanie odczytany żaden znak.
ungetc() zwraca 
c w przypadku pomyślnego zakończenia, a
  
EOF w przypadku błędu.
ZGODNE Z¶
ANSI - C, POSIX.1
BŁĘDY¶
Nigdy nie należy używać 
gets(). Funkcja ta jest
  szczególnie niebezpieczna w użyciu, ponieważ bez
  znajomości danych z góry nie jest możliwe określenie, ile
  znaków 
gets() przeczyta, i ponieważ 
gets() będzie
  kontynuować umieszczanie znaków po przekroczeniu końca bufora.
  Było to wykorzystywane do łamania zabezpieczeń komputerów.
  Zamiast 
gets() należy korzystać z 
fgets().
Nie jest zalecane mieszanie wywołań funkcji wejściowych z
  biblioteki 
stdio z niskopoziomowymi wywołaniami 
read() dla
  deskryptora pliku stowarzyszonego ze strumieniem wejściowym; wyniki
  będą nieokreślone i z dużym prawdopodobieństwem nie
  takie, jakich oczekiwano.
ZOBACZ TAKŻE¶
read(2), 
write(2), 
ferror(3), 
fopen(3),
  
fread(3), 
fseek(3), 
puts(3), 
scanf(3),
  
unlocked_stdio(3)
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu
  Tłumaczenia Manuali i 
może nie być aktualne. W razie
  zauważenia różnic między powyższym opisem a
  rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o
  zapoznanie się z oryginalną (angielską) wersją strony
  podręcznika za pomocą polecenia:
  
  - man --locale=C 3 gets
 
Prosimy o pomoc w aktualizacji stron man - więcej informacji można
  znaleźć pod adresem
  
http://sourceforge.net/projects/manpages-pl/.