Linux |
CentOS 5.3 |
|
readdir(3) |
readdir − Consulter un répertoire. |
#include <sys/types.h> #include <dirent.h> struct dirent * readdir (DIR * dir); |
La fonction readdir() renvoie un pointeur sur une structure dirent représentant l’entrée suivante du flux répertoire pointé par dir. Elle renvoie NULL a la fin du répertoire, ou en cas d’erreur. Sous Linux, la structure dirent est définie de la façon suivante : |
struct dirent { ino_t d_ino; /* numéro d’i−noeud */ off_t d_off; /* offset jusqu’à la dirent suivante */ unsigned short d_reclen; /* longueur de cet enregistrement */ unsigned char d_type; /* type de file */ char d_name[256]; /* nom du fichier */ }; |
D’après POSIX, la structure dirent contient un champ char d_name[] de taille non spécifiée, avec au plus NAME_MAX caractères avant l’octet nul final. POSIX.1-2001 documente aussi le champ ino_t d_ino comme une extension XSI. L’utilisation des autres champs de cette structure compromet la portabilité de votre programme. Les données renvoyées par readdir() sont écrasées lors de l’appel suivant à readdir() sur le même flux répertoire. |
La fonction readdir() renvoie un pointeur sur une structure dirent, ou NULL lorsqu’une erreur se produit, ou lorsque la fin du répertoire est atteinte. Si une erreur survient, errno contient le code de l’erreur. |
EBADF |
Le flux répertoire dir est invalide. |
SVr4, BSD 4.3, POSIX.1-2001. |
read(2), closedir(3), dirfd(3), ftw(3), opendir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3) |
Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 5 novembre 1996 et révisée le 14 août 2006. L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 readdir ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel. |
readdir(3) |