Rechercher une page de manuel
readdir
Langue: pl
Version: 1995-07-22 (fedora - 25/11/07)
Section: 2 (Appels système)
NAZWA
readdir - odczytanie wpisu w kataloguSKŁADNIA
#include <unistd.h> #include <linux/dirent.h> #include <linux/unistd.h> _syscall3(int, readdir, uint, fd, struct dirent *, dirp, uint, count); int readdir(unsigned int fd, struct dirent *dirp, unsigned int count);
OPIS
Nie jest to funkcja, która cię interesuje. Opis implementacji interfejsu zgodnego z POSIX w bibliotece C znajduje się w readdir(3). Niniejsza strona opisuje goły interfejs wywołania systemowego, który może ulec zmianie i który został zastąpiony przez getdents(2).readdir odczytuje do wskazywanego przez dirp obszaru pamięci jedną strukturę dirent z katalogu, na który wskazuje fd. Parametr count jest ignorowany; odczytywana jest co najwyżej jedna struktura.
Struktura dirent jest zadeklarowana następująco:
-
struct dirent { long d_ino; /* numer i-węzła */ off_t d_off; /* offset do tego dirent */ unsigned short d_reclen; /* długość tego d_name */ char d_name [NAME_MAX+1]; /* nazwa pliku (zakończona znakiem NUL) */ }
d_ino jest numerem i-węzła. d_off jest odległością od początku katalogu do tego wpisu dirent. d_reclen jest rozmiarem d_name, nie licząc kończącego znaku NUL. d_name jest zakończoną znakiem NUL nazwą pliku.
WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest 1. Po natrafieniu na koniec katalogu zwracane jest 0. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.BŁĘDY
- EBADF
- Nieprawidłowy deskryptor fd.
- EFAULT
- Argument wskazuje poza przestrzeń adresową wywołującego procesu.
- EINVAL
- Bufor na wynik jest za mały.
- ENOENT
- Nie ma takiego katalogu.
- ENOTDIR
- Deksryptor pliku nie odnosi się do katalogu.
ZGODNE Z
Tp wywołanie systemowe jest specyficzne dla Linuksa.ZOBACZ TAKŻE
getdents(2), readdir(3)Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre