Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gets(3S) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

lseek(2)

read(2)

ferror(3S)

fopen(3S)

fread(3S)

getc(3S)

scanf(3S)

stdio(3S)

ungetc(3S)

lfs(5)

stdio(5)

gets(3S)                                                           gets(3S)

NAME
     gets, fgets - Zeichenkette aus einem Stream lesen

SYNTAX
     #include <stdio.h>

     char *gets(char *s);

     char *fgets(char *s, int n, FILE *stream);

BESCHREIBUNG
     gets() liest Bytes von der Standardeingabe stdin in das Feld, auf das
     s zeigt, bis ein Neue-Zeile-Zeichen gelesen oder das Dateiende
     erreicht wird. Das Neue-Zeile-Zeichen wird gelöscht und die Zeichen-
     kette mit dem Null-Byte beendet.

     fgets() liest Bytes von stream in das Feld, auf das s zeigt, bis n-1
     Bytes gelesen sind oder ein Neue-Zeile-Zeichen auf s übertragen wurde
     oder das Dateiende erreicht ist. Die Zeichenkette wird mit dem Null-
     Byte beendet.

     Bei der Verwendung von gets() kann ein unbestimmtes Verhalten auftre-
     ten, wenn die Länge einer Eingabezeile die Größe von s überschreitet.
     Verwenden Sie deshalb fgets() anstelle von gets().

FEHLER
     Die folgenden Beschreibungen der Fehlercodes sind funktionsspezifisch.
     Eine allgemeingültige Beschreibung finden Sie in introprm2(2) bzw. in
     errno(5).

     Die Funktionen schlagen bei folgenden Bedingungen fehl:

     EAGAIN      Für den Dateideskriptor von stream ist das ONONBLOCK-Flag
                 gesetzt, und der Prozeß wird verzögert.

     EBADF       Der Dateideskriptor von stream ist kein zum Lesen geöffne-
                 ter Dateideskriptor.

     EINTR       Das Lesen wurde durch den Empfang eines Signals unterbro-
                 chen, und es wurden keine Daten übertragen.

     EIO         Ein physischer Ein-/Ausgabefehler ist aufgetreten, oder
                 der Prozeß ist Teil einer Hintergrundprozeßgruppe, die
                 versucht, vom steuernden Terminal zu lesen. Entweder igno-
                 riert oder blockiert der Prozeß das SIGTTIN-Signal, oder
                 die Prozeßgruppe ist verwaist. Dieser Fehler kann auch aus
                 implementierungsabhängigen Gründen auftreten.

     EOVERFLOW   Die Datei ist eine reguläre Datei, und es wurde versucht,
                 bis hin oder über den maximalen Offset hinaus zu lesen,
                 der dem entsprechenden Datenstrom zugeordnet ist.




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

gets(3S)                                                           gets(3S)

     Die Funktionen können bei folgenden Bedingungen fehlschlagen:

     ENOMEM      Es ist nicht genügend Speicherplatz verfügbar.

     ENXIO       Es liegt eine Anforderung eines nicht vorhandenen Geräts
                 vor, oder die Anforderung ging über die Leistungsgrenzen
                 des Gerätes hinaus.

ERGEBNIS
     Wenn das Dateiende erreicht wird und keine Bytes gelesen wurden, wer-
     den keine Bytes in s abgelegt und ein Nullzeiger zurückgegeben. Wenn
     ein Lesefehler auftritt, wie z. B. beim Versuch, diese Funktionen auf
     eine Datei anzuwenden, die nicht zum Lesen geöffnet wurde, wird ein
     Nullzeiger zurückgegeben und die Fehleranzeige für den Stream gesetzt.
     Wenn das Dateiende erreicht ist, wird die EOF-Anzeige des Streams
     gesetzt. Andernfalls wird s zurückgegeben.

SIEHE AUCH
     lseek(2), read(2), ferror(3S), fopen(3S), fread(3S), getc(3S),
     scanf(3S), stdio(3S), ungetc(3S), lfs(5), stdio(5).


































Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026