Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       fgetc,  fgets,  getc,  getchar,  gets,  ungetc  - wprowadzanie znakow i
       lacuchow znakowych

SK/LADNIA

       #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

       fgetc() odczytuje nastpny znak ze stream i zwraca  go  jako  rzutowanie
       unsigned char na int, lub EOF w przypadku koca pliku albo bldu.

       getc() jest rownowane fgetc() z tym wyjtkiem, e moe by zaimplementowane
       jako makro, ktore wylicza stream wicej ni raz.

       getchar() jest rownowane getc(stdin).

       gets() odczytuje lini z stdin do  bufora  wskazywanego  przez  s  a  do
       koczcego  znaku  nowej linii lub EOF, ktory jest zastpowany przez '\0'.
       Nie jest sprawdzane przepelnienie bufora (zobacz B/LDY poniej).

       fgets() odczytuje co najwyej o jeden mniej ni size znakow ze  stream  i
       umieszcza  je  w  buforze  wskazywanym  przez  s.   Odczyt  koczy si po
       napotkaniu EOF lub znaku nowej  linii.  Jeli  odczytany  zostanie  znak
       nowej  linii,  jest  on  przechowywany  w  buforze. Po ostatnim znaku w
       buforze jest umieszczany '\0'.

       ungetc() odklada c z powrotem do stream, rzutowane na unsigned char,  o
       ile  jest  to  moliwe  dla nastpnych operacji odczytu. Odloone znaki bd
       zwracane w odwrotnej  kolejnoci;  tylko  jedno  pomylne  odloenie  jest
       zagwarantowane.

       Wywolania  opisanych  tu  funkcji  mog  by  mieszane  midzy sob jak i z
       wywolaniami innych funkcji wejciowych z biblioteki stdio operujcych  na
       tym samym strumieniu wejciowym.

       Informacje    o    nieblokujcych    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 koca pliku lub bldu.

       gets()  i  fgets() zwracaj s w przypadku pomylnego zakoczenia, a NULL w
       przypadku bldu oraz gdy wystpi koniec pliku, a nie  zostanie  odczytany
       aden znak.

       ungetc()  zwraca  c w przypadku pomylnego zakoczenia, a EOF w przypadku
       bldu.

ZGODNE Z

       ANSI - C, POSIX.1

B/LDY

       Nigdy nie naley uywa gets().  Funkcja ta jest szczegolnie niebezpieczna
       w uyciu, poniewa bez znajomoci danych z gory nie jest moliwe okrelenie,
       ile  znakow  gets()  przeczyta,  i  poniewa  gets()  bdzie   kontynuowa
       umieszczanie   znakow   po   przekroczeniu   koca   bufora.    Bylo  to
       wykorzystywane do lamania zabezpiecze komputerow. Zamiast gets()  naley
       korzysta z fgets().

       Nie  jest  zalecane  mieszanie  wywola  funkcji wejciowych z biblioteki
       stdio z  niskopoziomowymi  wywolaniami  read()  dla  deskryptora  pliku
       stowarzyszonego  ze  strumieniem  wejciowym;  wyniki bd nieokrelone i z
       duym prawdopodobiestwem nie takie, jakich oczekiwano.

ZOBACZ TAKE

       read(2), write(2), ferror(3), fopen(3),  fread(3),  fseek(3),  puts(3),
       scanf(3), unlocked_stdio(3)

INFORMACJE O T/LUMACZENIU

       Powysze  tlumaczenie  pochodzi z nieistniejcego ju Projektu Tlumaczenia
       Manuali i moe nie by aktualne. W razie zauwaenia ronic  midzy  powyszym
       opisem  a  rzeczywistym  zachowaniem  opisywanego programu lub funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.