web-dev-qa-db-fra.com

Membres de la structure Dirent

J'ai commencé à travailler avec la bibliothèque dirent.h et je suis tombé sur un membre très utile du structeur "struct dirent" qui struct dirent * p-> d_name dans mon livre. Mais malheureusement, il ne mentionne aucun autre membre de cette structure;

Je me demandais quels sont les autres membres de cette structure et à quoi servent-ils?

Cordialement

22
Naruto

La structure, struct dirent fait référence à l'entrée du répertoire.

http://www.gnu.org/software/libc/manual/html_node/Directory-Entries.html

Sous Linux, il est défini comme:

struct dirent {
    ino_t          d_ino;       /* inode number */
    off_t          d_off;       /* offset to the next dirent */
    unsigned short d_reclen;    /* length of this record */
    unsigned char  d_type;      /* type of file; not supported
                                   by all file system types */
    char           d_name[256]; /* filename */
};

référer: man readdir

Ou recherchez simplement "dirent.h" dans le répertoire include.

26
askmish

Il n'y a que deux membres (de wikipedia ):

  • ino_t d_ino - numéro de série du fichier
  • char d_name[] - nom de l'entrée (ne dépassera pas une taille de NAME_MAX)

Jetez également un œil à la spécification Unix .

3
MByD

en plus de la réponse ci-dessus de @Binyamin Sharet:

 off_t d_off - file offset
    unsigned short int d_reclen - length of the dirent record
    unsigned short int d_namlen - length of name
    unsigned int d_type - type of file
1
Ravindra Bagale