#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<unistd.h>
#include<string.h>
int getFileName(const char * root){//获得root 目录路径
int num=0;
DIR* dir=open(root);
struct dirent* dirn=NULL;
dirn=readdir(dir);
while(dirn!=NULL){
if(strcmp(dirn->d_name,".")==0 || strcmp(dirn->d_name,"..")==0){//避免遍历此目录和上级目录
continue:
}
if(dirn->d_type != d_dir){//得到普通文件
num++;
}
char path[1024]={};
if(dirn->d_type==d_dir){//遍历目录文件中的文件
getFileName(sprintf(path,"%s/%s",root,dirn->name));
}
}
close(dir);
return num;
}