Rechercher une page de manuel
read
Langue: de
Version: 17. Januar, 1996 (openSuse - 09/10/07)
Section: 2 (Appels système)
BEZEICHNUNG
read - von einer Datei lesenSYNOPSIS
#include <unistd.h> ssize_t read(int fd, void *buf, size_t count);
BESCHREIBUNG
read versucht aus der fd zugeordneten Datei count Bytes in den Puffer, auf den buf zeigt, zu schreiben. POSIX fordert, dass ein nachweisbar nach der Rückkehr von write() liegendes read() die neuen Daten liefern muss. Es sollte jedoch beachtet werden, dass nicht alle Dateisysteme POSIX-konform sind.RÜCKGABEWERT
Bei Erfolg wird die Anzahl von gelesenen Bytes zurückgegeben. Dies können weniger als count Bytes sein, falls in einer regulären Datei ab der aktuellen Position nur noch weniger Bytes vorhanden sind, read() durch ein Signal unterbrochen wurde oder falls von einer nicht-regulären Datei ohne Verzögerung nicht mehr Bytes gelesen werden können. Im Fehlerfalle wird -1 zurückgegeben und errno wird entsprechend gesetzt.FEHLER
- EINTR
- Der Aufruf wurde durch ein Signal unterbrochen bevor Daten gelesen wurden.
- EAGAIN
- Mit O_NONBLOCK wurde nicht-blockierende Ein-/Ausgabe gewählt und es lagen keine Daten zum sofortigen Lesen an.
- EISDIR
- fd referenziert ein Verzeichnis.
- EBADF
- fd Ist keine gültige Dateikennzahl oder wurde nicht zum Lesen geöffnet.
- EINVAL
- fd gehört zu einer Datei, welche nicht zum Lesen geeignet ist.
- EFAULT
- buf ist außerhalb Deines ansprechbaren Adressraumes.
Abhängig vom Objekt, welches mit fd verbunden ist, können auch andere Fehler auftreten. POSIX spezifiziert nicht die Position in der Datei, nachdem ein Fehlers auftrat. Falls read() bereits einige Bytes gelesen hat und dann ein Signal auftritt, so ist nicht spezifiziert, ob es erst mit der Anzahl der Bytes oder mit -1 zurückkehrt.
KONFORM ZU
SVID, AT&T, POSIX, X/OPEN, BSD 4.3SIEHE AUCH
readdir(2), write(2), write(2), fcntl(2), close(2), lseek(2), select(2), readlink(2), ioctl(2), fread(3).Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre