diff options
Diffstat (limited to 'reference/C/CONTRIB/OR_USING_C/04.2.c')
-rw-r--r-- | reference/C/CONTRIB/OR_USING_C/04.2.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/reference/C/CONTRIB/OR_USING_C/04.2.c b/reference/C/CONTRIB/OR_USING_C/04.2.c new file mode 100644 index 0000000..2f2cde2 --- /dev/null +++ b/reference/C/CONTRIB/OR_USING_C/04.2.c @@ -0,0 +1,34 @@ +/* + * For use with 4.2 and 4.3BSD systems. + */ +#include <sys/types.h> +#include <sys/dir.h> +#include <stdio.h> + +main() +{ + DIR *dp; + struct direct *dir; + + if ((dp = opendir(".")) == NULL) { + fprintf(stderr, "cannot open directory.\n"); + exit(1); + } + + /* + * Read entries... + */ + while ((dir = readdir(dp)) != NULL) { + /* + * Skip removed files. + */ + if (dir->d_ino == 0) + continue; + + printf("%s\n", dir->d_name); + } + + closedir(dp); + exit(0); +} + |