Provided by: manpages-de-dev_1.4-1_all bug

BEZEICHNUNG

       fgetc, fgets, getc, getchar, gets, ungetc - Eingabe von Zeichen und Zeichenketten

ÜBERSICHT

       #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);

BESCHREIBUNG

       fgetc()  liest  das  nächste  Zeichen aus stream und gibt es als ein unsigned char zurück, das in ein int
       umgewandelt wurde oder EOF bei Dateiende oder Fehler.

       getc() ist äquivalent zu fgetc(), außer dass es als ein Makro implementiert sein darf,  das  stream  mehr
       als einmal auswertet.

       getchar() ist äquivalent zu getc(stdin).

       gets()  liest  eine  Zeile  von  stdin  in  den  Puffer, auf den s zeigt, bis entweder ein abschließender
       Zeilenvorschub oder EOF auftritt, welche durch ein Null-Byte ('\0') ersetzt werden. Es wird keine Prüfung
       auf Pufferüberlauf durchgeführt (siehe FEHLER unten).

       fgets() liest höchstens size minus ein Zeichen von stream und speichert sie in  dem  Puffer,  auf  den  s
       zeigt.  Das Lesen endet nach einem EOF oder Zeilenvorschub. Wenn ein Zeilenvorschub gelesen wird, wird er
       in dem Puffer gespeichert. Nach dem letzten Zeichen im Puffer wird ein  abschließendes  Null-Byte  ('\0')
       gespeichert.

       ungetc() schiebt c zurück zu stream, umgewandelt in ein unsigned char, wo es für folgende Leseoperationen
       verfügbar  ist.  Zurückgeschobene  Zeichen  werden  in  umgekehrter  Reihenfolge  zurückgegeben;  nur ein
       Zurückschieben wird unterstützt.

       Aufrufe der hier beschriebenen Funktionen können für  den  selben  Eingabestream  untereinander  und  mit
       anderen Eingabefunktionen der stdio-Bibliothek gemischt werden.

       Für nicht sperrende Gegenstücke siehe unlocked_stdio(3).

RÜCKGABEWERT

       fgetc(), getc() und getchar() geben das gelesene Zeichen als ein unsigned char zurück (umgewandelt in ein
       int) oder EOF bei Dateiende oder Fehler.

       gets()  und  fgets()  geben  bei Erfolg s zurück und NULL im Fehlerfall oder wenn das Dateiende auftritt,
       ohne dass Zeichen gelesen wurden.

       ungetc() gibt bei Erfolg c zurück oder im Fehlerfall EOF.

KONFORM ZU

       C89, C99, POSIX.1-2001.

       LSB missbilligt gets(),  POSIX.1-2008 markiert gets() als veraltet. ISO C11  entfernt  die  Spezifikation
       von   gets()   aus   der  Sprache  C.  Seit  Version  2.16  stellen  die  Header-Dateien  der  Glibc  die
       Funktionsdeklaration nicht mehr bereit, wenn das Feature-Test-Makro _ISOC11_SOURCE definiert ist.

FEHLER

       Benutzen Sie gets() niemals. Da ohne die vorherige Kenntnis der Daten nicht gesagt werden kann, wie viele
       Zeichen gets() lesen wird, und da gets() fortfahren wird, Daten über  das  Ende  des  Puffers  hinaus  zu
       speichern,  ist  die  Nutzung  dieser  Funktion  sehr  gefährlich.  Sie  wurde  benutzt,  um  in  Rechner
       einzubrechen. Benutzen Sie stattdessen fgets().

       Es ist nicht ratsam, Aufrufe von Funktionen der stdio-Bibliothek mit systemnahen Aufrufen von read(2) für
       den Dateideskriptor zu mischen, der mit demselben Eingabestream verbunden ist; die Ergebnisse sind  nicht
       definiert und sehr wahrscheinlich nicht das, was sie wollen.

SIEHE AUCH

       read(2),   write(2),   ferror(3),   fgetwc(3),   fgetws(3),  fopen(3),  fread(3),  fseek(3),  getline(3),
       getwchar(3), puts(3), scanf(3), ungetwc(3), unlocked_stdio(3), feature_test_macros(7)

KOLOPHON

       This page is part of release 3.54 of the Linux man-pages project.  A  description  of  the  project,  and
       information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother <krd@gulu.net> und Martin Eberhard
       Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese  Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser  Handbuchseite  finden,  schicken  Sie  bitte  eine  E-Mail  an
       <debian-l10n-german@lists.debian.org>.

GNU                                              18. Januar 2012                                         GETS(3)