NAME
readdir - read a directory
SYNOPSIS
#include <sys/types.h>
#include <dirent.h>
I struct dirent *readdir(DIR * dir );
DESCRIPTION
The
R readdir ()
function returns a pointer to a dirent structure
representing the next directory entry in the directory stream pointed
to by dir.
It returns NULL on reaching the end-of-file or if
an error occurred.
On Linux, the
dirent
structure is defined as follows:
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 */
char d_name[256]; /* filename */
};
According to POSIX, the
dirent
structure contains a field
char d_name[]
of unspecified size, with at most
NAME_MAX
characters preceding the terminating null byte.
POSIX.1-2001 also documents the field
ino_t d_ino
as an XSI extension.
R Use of other fields will harm the portability of your programs .
The data returned by
R readdir ()
may be overwritten by subsequent
calls to
R readdir ()
for the same directory stream.
RETURN VALUE
The
R readdir ()
function returns a pointer to a
dirent
structure, or
NULL if an error occurs or end-of-file is reached.
On error,
errno
is set appropriately.
ERRORS
EBADF
Invalid directory stream descriptor dir.
CONFORMING TO
SVr4, 4.3BSD, POSIX.1-2001
SEE ALSO