Parcourez tous les fichiers du répertoire

  Parcourez toutes les informations de fichier sous le répertoire, le répertoire peut contenir des sous-répertoires. Si le répertoire est toujours ouvert, ce sous-répertoire doit être ouvert à nouveau. Donc, cela doit utiliser la récursivité, en fait, de nombreux parcours ont souvent besoin d'utiliser la récursivité, car il y a plus d'une couche à traverser.

int ReadDir (const char * strpathname) { while (1) { if ((stdinfo = readdir (dir)) == 0) break;


    if(strncmp(stdinfo->d_name,".",1)==0)  continue;  //以.开始的文件不读,这是隐藏文件
  
    if(stdinfo->d_type==8)  //如果是文件,显示出来
      printf("name=%s/%s\n",strpathname,stdinfo->d_name);

    if(stdinfo->d_type==4)
      {
         sprintf(strchdpath,"%s/%s",strpathname,stdinfo->d_name);
         ReadDir(strchdpath);
      }
}

} Le
  type 4 est un répertoire, alors le chemin complet de ce sous-répertoire doit être passé à la fonction de traversée.

int ReadDir (const char * strpathname)
{ ReadDir (strchdpath); c'est la récursivité }

Un rappel que la récursivité est souvent utilisée dans les classes de parcours.

Je suppose que tu aimes

Origine blog.csdn.net/qq_43403759/article/details/113107267
conseillé
Classement