bgets(3G) bgets(3G)
NAME
bgets - Stream bis zum nächsten Begrenzer lesen
SYNTAX
cc [option ...] datei ... -lgen [bibliothek ...]
#include <libgen.h>
char *bgets(char *Puffer, sizet *Anzahl, FILE *Stream,
const char *Abbruchfolge);
BESCHREIBUNG
bgets() liest Zeichen vom Stream in den Puffer, bis entweder Anzahl
Zeichen gelesen worden sind oder eines der Zeichen in Abbruchfolge im
Stream angetroffen wird. Die gelesenen Daten werden mit einem Null-
Byte abgeschlossen (\0), und es wird ein Zeiger auf das abschließende
Null-Byte zurückgegeben. Wenn ein Zeichen der Abbruchfolge angetroffen
wird, ist das letzte Nicht-Nullzeichen der Begrenzer, der das Einlesen
abschließt.
Beachten Sie, daß abgesehen davon, daß der zurückgegebene Wert auf das
Ende statt auf den Anfang der gelesenen Zeichenkette zeigt, folgende
Aufrufe identisch sind:
bgets (Puffer, sizeof Puffer, Stream, "\n")
fgets (Puffer, sizeof Puffer, Stream);
Im Puffer wird immer genug Platz für das abschließene Nullzeichen
reserviert.
Wenn Abbruchfolge ein Nullzeiger ist, wird der Wert von Abbruchfolge
von dem vorherigen Aufruf verwendet. Wenn Abbruchfolge beim ersten
Aufruf Null ist, werden keine Begrenzer verwendet.
BEISPIELE
#include <libgen.h>
char Puffer[8];
/* den ersten Benutzernamen aus /etc/passwd einlesen */
fp = fopen("/etc/passwd","r");
bgets(Puffer, 8, fp, ":");
ERGEBNIS
Bei einem Fehler oder am Dateiende wird NULL zurückgegeben. Der Feh-
lerstatus wird erst beim nächsten Aufruf ausgegeben, wenn Zeichen
gelesen, aber noch nicht zurückgegeben wurden.
SIEHE AUCH
gets(3S).
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98