opendir readdir readdir_r telldir seekdir rewinddir closedir dirfd - directory operations
Lb libc
The
readdir ();
function
returns a pointer to the next directory entry.
It returns
NULL
upon reaching the end of the directory or detecting an invalid
seekdir ();
operation.
The
readdir_r ();
function
provides the same functionality as
readdir (,);
but the caller must provide a directory
Fa entry
buffer to store the results in.
If the read succeeds,
Fa result
is pointed at the
Fa entry ;
upon reaching the end of the directory
Fa result
is set to
NULL
The
readdir_r ();
function
returns 0 on success or an error number to indicate failure.
The
telldir ();
function
returns the current location associated with the named
directory stream
Values returned by
telldir ();
are good only for the lifetime of the
DIR
pointer,
Fa dirp ,
from which they are derived.
If the directory is closed and then
reopened, prior values returned by
telldir ();
will no longer be valid.
The
seekdir ();
function
sets the position of the next
readdir ();
operation on the
directory stream
The new position reverts to the one associated with the
directory stream
when the
telldir ();
operation was performed.
The
rewinddir ();
function
resets the position of the named
directory stream
to the beginning of the directory.
The
closedir ();
function
closes the named
directory stream
and frees the structure associated with the
Fa dirp
pointer,
returning 0 on success.
On failure, -1 is returned and the global variable
errno
is set to indicate the error.
The
dirfd ();
function
returns the integer file descriptor associated with the named
directory stream
see
open(2).
Sample code which searches a directory for entry ``name'' is:
len = strlen(name); dirp = opendir("."); while ((dp = readdir(dirp)) != NULL) if (dp->d_namlen == len && !strcmp(dp->d_name, name)) { (void)closedir(dirp); return FOUND; } (void)closedir(dirp); return NOT_FOUND;
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |