在学习APUE第4章时候,里面编写了一段递归顺序遍历目录层次的结构的代码,该代码实现了递归访问目录。但是该代码并没有显示降序的方式显示目录树。
因此,我讲代码稍微修改,使其能够按照tree命令的方式显示,同时也统计了各个文件的数量。
#include<iostream>
#include<cstring>
#include<vector>
#include<dirent.h>
#include<unistd.h>
#include<algorithm>
#include<fstream>
#include<sys/stat.h>
using namespace std;
#define FTW_F 1 // file other than directory
#define FTW_D 2 //the directory
#define FTN_DNR 3 //the directory that we can not access
#define FTW_NS 4 //file that can not stat
};
ofstream fcout("a.txt");
void myftw(char *ss,int level);
long myfunc(const char *pathname);
int main(int argc,char* argv[])
{
if(argc!=2)
cout<<"usage: ftw [pathname]"<<endl;
myftw(argv[1],0);
cout<<"FIFOS="<<myfileInfo.npipe<<","<<myfileInfo.npipe*100.