文件和目录

#include <unistd.h>
#include <dirent.h>//该头文件是为了使用opendir,readdir函数的
#include <stdio.h>
#include <stdlib.h>

int main(int argc,char *argv[]){
        DIR *dp;
        struct dirent *dirp;

        if(argc!=2){
                printf("usage: ls directory_name");
        }

    **//opendir返回的是指向dir结构的指针,我们将该指针传送给readdir
    //函数,不用关心dir结构中包含了什么,然后循环中调用readdir来读取
    //每个目录中项,在dirent结构中取出的是每个目录项的名字(d_name)。
    //使用该名字,此后就可以调用stat函数以获得该文件的所有的属性**
        if((dp=opendir(argv[1]))==NULL){
                printf("can't open %s",argv[1]);
        }

        while((dirp=readdir(dp))!=NULL){
                printf("%s\n",dirp->d_name);
        }
        closedir(dp);
        exit(0);
}

运行该文件:   ./文件名 参数   ./a.out /tmp
posted @ 2018-02-26 20:45  带头大哥小白  阅读(110)  评论(0编辑  收藏  举报