Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       stdio - Standardein-/-ausgabe-Bibliotheksfunktionen

ÜBERSICHT

       #include <stdio.h>

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

BESCHREIBUNG

       Die   Standard-E/A-Bibliothek   stellt  eine  einfache  und  effiziente
       E/A-Schnittstelle für gepufferte Datenströme zur  Verfügung.  Ein-  und
       Ausgabe  werden  als logische Datenströme dargestellt und physikalische
       E/A-Charakteristiken werden verborgen. Die Funktionen und  Makros  sind
       im   Folgenden   aufgelistet;   weitere   Informationen  sind  auf  den
       verschiedenen Handbuchseiten verfügbar.

       Ein Datenstrom wird mit einer externen Datei  (die  ein  physikalisches
       Gerät  sein  kann)  verbunden,  indem eine Datei geffnet wird, was das
       Erzeugen  einer  neuen  Datei  beinhaltet.  Eine  bestehende  Datei  zu
       erzeugen,   verwirft   ihren   bisherigen   Inhalt.   Wenn   die  Datei
       Positionierungsänderungen  unterstützt  (wie  eine  Datei   auf   einer
       Festplatte,   im   Gegensatz   zu   einem   Terminal),  dann  wird  ein
       Dateipositionszeiger mit dem Datenstrom verbunden und  auf  den  Anfang
       der  Datei  positioniert  (nulltes  Byte),  außer  wenn  die  Datei  im
       Anhänge-Modus  geöffnet  wurde.   Im   Anhänge-Modus   ist   es   nicht
       spezifiziert, ob der Positionsanzeiger auf den Anfang oder das Ende der
       Datei platziert  wird.  Der  Positionszeiger  wird  durch  nachfolgende
       Lese-,  Schreib-  und Positionierungszugriffe bewegt. Jede Eingabe wird
       so eingelesen, als ob die Funktion fgetc(3) für jedes  Zeichen  einzeln
       aufgerufen  worden  wäre.  Die Ausgabe erfolgt, als würde jedes Zeichen
       einzeln durch die Funktion fputc(3) geschrieben.

       Eine Datei wird von einem Datenstrom durch Schlieen der Datei  gelöst.
       Ausgabedatenströme    werden    geleert   (noch   nicht   geschriebener
       Pufferinhalt wird auf den Rechner übertragen) bevor der Datenstrom  von
       der Datei getrennt wird. Der Wert eines Zeigers auf ein FILE Objekt ist
       nicht mehr gültig, nachdem die Datei geschlossen wurde (Müll).

       Eine Datei kann nachfolgend durch das selbe oder ein  anderes  Programm
       wieder  geöffnet  und  ihr  Inhalt  zurückgelesen oder verändert werden
       (falls sie auf den Anfang zurückpositioniert  werden  kann).  Wenn  die
       Hauptfunktion   zum   ursprünglich  Aufrufenden  zurückkehrt  oder  die
       Funktion exit(3) aufgerufen  wird,  werden  alle  offenen  Dateien  vor
       Programmende     geschlossen     (nachdem    alle    Ausgabedatenströme
       herausgeschrieben  wurden).  Andere   Methoden   zur   Beendigung   von
       Programmen,  wie abort(3), kümmern sich nicht um das korrekte Schließen
       von Dateien.

       Bei Programmstart sind drei Textdatenströme vordefiniert  und  brauchen
       nicht   explizit  geöffnet  zu  werden  –  Standardeingabe  (zum  Lesen
       konventioneller   Eingabe),   –    Standardausgabe    (zum    Schreiben
       konventioneller  Ausgabe)  und Standardfehlerausgabe (zum Schreiben der
       Diagnoseausgabe). Diese Datenströme werden abgekürzt durch stdin,stdout
       und   stderr.   Der  Datenstrom  der  Standardfehlerausgabe  ist  nicht
       vollständig gepuffert,  wenn  er  geöffnet  ist;  die  Datenströme  der
       Standardein- und -ausgabe sind nur dann vollständig gepuffert, wenn die
       Datenströme nicht auf ein interaktives Gerät verweisen.

       Ausgabedatenströme,   die   auf    Terminalgeräte    verweisen,    sind
       standardmäßig  zeilengepuffert.  Noch  ausstehende  Ausgaben zu solchen
       Datenströmen werden  automatisch  geschrieben,  wann  immer  aus  einem
       Eingabedatenstrom gelesen wird, der sich auf ein Terminalgerät bezieht.
       Falls nach  einer  Ausgabe  viel  gerechnet  wird,  ist  es  notwendig,
       fflush(3) vor der Rechnung aufzurufen, damit die Ausgabe erscheint.

       Die  Bibliothek  stdio  ist  Teil  der Bibliothek libc und die Routinen
       werden von den Compilern cc(1)  und  pc(1)  nach  Bedarf  geladen.  Die
       Abschnitte   ÜBERSICHT  der  folgenden  Handbuchseiten  zeigen,  welche
       Include-Dateien zu benutzen sind, wie die Deklaration für die  Funktion
       aussieht und welche externen Variablen interessant sind.

       Die  folgenden  Namen  sind  als  Makros  definiert.  Sie  dürfen nicht
       wiederbenutzt werden  ohne  ihre  vorherigen  Definitionen  vorher  mit
       #undef  zu  entfernen: 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. Von den Makrofunktionen feof, ferror, clearerr,  fileno,
       getc,  getchar,  putc  und putchar existieren Funktionsversionen. Diese
       werden benutzt, wenn die Makrodefinitionen explizit entfernt werden.

   Liste der Bibliotheksfunktionen
       Funktion      Beschreibung
       ────────────────────────────────────────────────────────────────────────────
       clearerr      Status des Datenstroms prüfen und zurücksetzen
       fclose        Datenstrom schließen
       fdopen        Funktionen zum Öffnen eines Datenstroms
       feof          Status des Datenstroms prüfen und zurücksetzen
       ferror        Status des Datenstroms prüfen und zurücksetzen
       fflush        Datenstrom herausschreiben
       fgetc         das nächsten Zeichen oder Wort vom Eingabedatenstrom einlesen
       fgetpos       einen Datenstrom neu positionieren
       fgets         eine Zeile aus einem Datenstrom einlesen
       fileno        den Ganzzahldeskriptor eines Argumentdatenstroms zurückgeben
       fopen         Funktionen zum Öffnen eines Datenstroms
       fprintf       formatierte Ausgabeumwandlung
       fpurge        einen Datenstrom herausschreiben
       fputc         ein Zeichen oder Wort in den Datenstrom ausgeben
       fputs         eine Zeile in den Datenstrom ausgeben
       fread         binäre Datenstromein-/-ausgabe
       freopen       Funktionen zum Öffnen eines Datenstroms
       fscanf        formatbasierte Eingabeumwandlung
       fseek         einen Datenstrom neu positionieren
       fsetpos       einen Datenstrom neu positionieren
       ftell         einen Datenstrom neu positionieren
       fwrite        binäre Datenstromein-/-ausgabe
       getc          nächstes Zeichen oder Wort aus dem Eingabedatenstrom einlesen
       getchar       nächstes Zeichen oder Wort aus dem Eingabedatenstrom einlesen
       gets          eine Zeile aus dem Datenstrom einlesen
       getw          nächstes Zeichen oder Wort aus dem Eingabedatenstrom einlesen
       mktemp        einen (eindeutigen) temporären Dateinamen erzeugen
       perror        Systemfehlermeldungen
       printf        formatierte Ausgabeumwandlung
       putc          ein Zeichen oder Wort in einen Datenstrom ausgeben
       putchar       ein Zeichen oder Wort in einen Datenstrom ausgeben
       puts          eine Zeile in einen Datenstrom ausgeben
       putw          ein Zeichen oder Wort in einen Datenstrom ausgeben
       remove        einen Verzeichniseintrag löschen
       rewind        einen Datenstrom neu positionieren
       scanf         formatbasierte Eingabeumwandlung
       setbuf        Datenstrom-Puffereinstellungen
       setbuffer     Datenstrom-Puffereinstellungen
       setlinebuf    Datenstrom-Puffereinstellungen
       setvbuf       Datenstrom-Puffereinstellungen
       sprintf       formatierte Ausgabeumwandlung
       sscanf        formatbasierte Eingabeumwandlung

       strerror      Systemfehlermeldungen
       sys_errlist   Systemfehlermeldungen
       sys_nerr      Systemfehlermeldungen
       tempnam       Routinen für temporäre Dateien
       tmpfile       Routinen für temporäre Dateien
       tmpnam        Routinen für temporäre Dateien
       ungetc        Zeichen zurück in den Eingabedatenstrom geben
       vfprintf      formatierte Ausgabeumwandlung
       vfscanf       formatbasierte Eingabeumwandlung
       vprintf       formatierte Ausgabeumwandlung
       vscanf        formatbasierte Eingabeumwandlung
       vsprintf      formatierte Ausgabeumwandlung
       vsscanf       formatbasierte Eingabeumwandlung

KONFORM ZU

       Die Bibliothek stdio ist konform C89.

SIEHE AUCH

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

KOLOPHON

       Diese  Seite  ist  Teil  der   Veröffentlichung   3.32   des   Projekts
       Linux-man-pages.  Eine Beschreibung des Projekts und Informationen, wie
       Fehler    gemeldet     werden     können,     finden     sich     unter
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die  deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother
       <krd@gulu.net> und Chris Leick <c.leick@vollbio.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>.

                               26. Dezember 2001                      STDIO(3)