unix

readdir函数

       #include <dirent.h>

       struct dirent *readdir(DIR *dirp);

The readdir() function returns a pointer to a dirent structure
representing the next directory entry in the directory stream
pointed to by dirp. It returns NULL on reaching the end of the
directory stream or if an error occurred.

ls的实现代码如下

#include <stdio.h>          
#include <stdlib.h>        
#include <stddef.h>        
#include <string.h>         
#include <unistd.h>      
#include <dirent.h>



int 
main (int argc,  char *argv[])
{
    int c;
    
    while((c=getc(stdin))!=EOF)
    {
        if(putc(c,stdout)==EOF)
        {
            printf("output error
");
            exit(1);
        }
    }

    if(ferror(stdin))
    {
        printf("input error
");
        exit(1);        
    }

    exit(0);
}
原文地址:https://www.cnblogs.com/feiwatson/p/15361509.html