首页 > 其他 > 详细

uc中递归打印目录下的文件

时间:2016-11-12 02:38:16      阅读:248      评论:0      收藏:0      [点我收藏+]
#include <stdio.h>                                                              
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <dirent.h>
#include <iostream>
using namespace std;

void print(const char* path){
    DIR* dir = opendir(path);
    if(NULL == dir){
        return ;
    }
    struct dirent* ent;
    while(ent=readdir(dir),ent){//注意逗号表达式.
        if(4 == ent->d_type){
            printf("[%s]\n",ent->d_name);
            if(!strcmp(ent->d_name,".")||!strcmp(ent->d_name,"..")){
                continue;
            }
            char buf[100]={0};
            sprintf(buf,"%s/%se",path,ent->d_name);
            print(buf);//这里递归.
        }
        if(8 == ent->d_type){
            printf("%s\n",ent->d_name);
        }
    }
    int res = closedir(dir);
    if(-1 == res){
        return;
    }
}
int main(void){
    print("./");
    return 0;
}


本文出自 “12208412” 博客,请务必保留此出处http://12218412.blog.51cto.com/12208412/1871930

uc中递归打印目录下的文件

原文:http://12218412.blog.51cto.com/12208412/1871930

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!