递归遍历指定目录文件小程序

    技术2022-05-20  29

     #include <stdio.h>  #include <sys/types.h>  #include <dirent.h>  #include <errno.h> #include <string.h> void getdir(char *dirname) {     DIR *MYDIR;     struct dirent *diritem;         if((MYDIR=opendir(dirname)) == NULL)        perror("open dir  error!/n");     while((diritem = readdir(MYDIR)) != NULL)     {        if((diritem->d_type == DT_DIR) && (strcmp(diritem->d_name, ".") != 0) && (strcmp(diritem->d_name, "..") != 0))        {          // printf("%s is a directory!/n",diritem->d_name);           printf("/nchange directory into %s:/n",diritem->d_name);           getdir(diritem->d_name);        }        else        {            printf("%s/n",diritem->d_name);        }     }     closedir(MYDIR); }  int main(int argc, char* argv[])  {      getdir(argv[1]);  }

     

     


    最新回复(0)