給出指定目錄檔案系統的目錄結構,以凹入法寫入檔案dir_structure.txt文件中,並計算出該目錄所佔儲存區域大小。(凹入法顯示參見p93)
實現效果:
#include#include#include#include//目錄操作的標頭檔案
#include#includefile*fp;
//測試模組
long long size=0l;
void printdir(char *dir, int depth)
chdir(dir);//用於改變當前工作目錄,其引數為path 目標目錄
struct dirent *pentry;
struct stat statbuf;
while((pentry = readdir(pdir)) != null)
printf("%*s%s/\n",depth,"",pentry->d_name);
fprintf(fp,"%*s%s/\n",depth,"",pentry->d_name);
printdir(pentry->d_name,depth+4);
}else
}chdir("..");//返回上一級目錄
closedir(pdir);//關閉引數dir所指的目錄流。關閉成功則返回0,失敗返回-1
}int main()
vs2019版本實現效果:
vs2019實現**:
#include#include#include#include#includeusing namespace std;
file* fp;
long long size=0;//預先設定大小變數
void transfile(char * fname, int depth)
void filesearch(string path, int depth)
printf("%*s/", depth, "");
string a;a = path + "\\" + fa.name;
size+= fa.size;
transfile(fa.name, depth);
//fprintf(fp, "%*s%s/\n", depth, "", fa.name);
//cout << path+"\\"+fa.name << endl;
cout << fa.name << endl;
/*資料夾下有 . 和 .. 目錄,不能進入搜尋;
_a_subdir 表示資料夾屬性;*/
if (strcmp(fa.name, "..") && strcmp(fa.name, ".") && fa.attrib == _a_subdir)
filesearch(path + "\\" + fa.name, depth + 4);
} while (_findnext(fhandle, &fa) == 0);
/* _findnext 搜尋與_findfirst函式提供的檔名稱匹配的下乙個例項,若成功則返回0,否則返回-1 ;
_findclose 結束查詢;
*/ _findclose(fhandle);
return;
}int main()
#include#include#include#include#include#include#includeusing namespace std;
file* fp;
long long size=0;
void filesearch(string path, int depth)
printf("%d%*s/", depth, depth, "");
string a;
a = path + "\\" + fileinfo.name;
size+= fileinfo.size;
fprintf(fp, "%*s%s/\n", depth, "", a.c_str());
//cout << path+"\\"+fileinfo.name << endl;
cout << fileinfo.name << endl;
/*資料夾下有 . 和 .. 目錄,不能進入搜尋;
_a_subdir 表示資料夾屬性;*/
if (strcmp(fileinfo.name, "..") && strcmp(fileinfo.name, ".") && fileinfo.attrib == _a_subdir)
filesearch(path + "\\" + fileinfo.name, depth + 4);
} while (_findnext(hfile, &fileinfo) == 0);
/* _findnext 搜尋與_findfirst函式提供的檔名稱匹配的下乙個例項,若成功則返回0,否則返回-1 ;
_findclose 結束查詢;
*/ _findclose(hfile);
return;
}int main()
法正(11) 入川
劉焉在蜀中開創基業之初,作為乙個外來者,顯然對這些狀況缺乏了解,也就沒能因時制宜地處理好與益州豪強的關係,這樣一來,劉焉的政權自然搖搖晃晃,動盪不安。既然無法和當地豪族打成一片,劉焉就開始招納外族。益州的地理環境,為劉焉的政策提供了良好的客觀條件。因為這個地區是 漢蠻雜揉,具有邊區的性質。自東漢中業...
jam計數法(華為入職前練習)
jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的 數字 稱為jam數字。在jam數字中,每個字母...
劍指offer 回溯法
面試題12 矩陣中的路徑 上下左右遞迴,在看邊界條件 include includeusing namespace std 遞迴 bool haspathcore char m,int row,int col,int i,int j,const char str,int pathlen,bool v...