📄 subdir.cpp
字号:
#include <iostream>#include <iomanip>#include <string>using namespace std;#include "directory.h"#include "prompt.h"// print all entries in a directory (uses recursion)void Tab(int count)// postcondition: count tabs printed to cout{ int k; for(k=0; k < count; k++) {cout << "\t"; }}void ProcessDir(const string & path, int tabCount)// precondition: path specifies pathname to a directory// tabCount specifies how many tabs for printing// postcondition: all files and subdirectories in directory 'path' // printed, subdirectories tabbed over 1 more than parent{ DirStream indir(path); DirEntry entry; int num = 0; // number of files in this directory for(indir.Init(); indir.HasMore(); indir.Next()) { entry = indir.Current(); // either file or subdirectory // don't process self: ".", or parent directory: ".." if (entry.Name() != "." && entry.Name() != "..") { num++; Tab(tabCount); cout << "(" << setw(3)<< num << ")" << "\t" << entry.Name() << endl; if (entry.IsDir() ) // process subdir { ProcessDir(entry.Path(),tabCount+1); } } } }int main(){ string dirname = PromptString("enter directory name "); ProcessDir(dirname,0); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -