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>.