freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

《操作系統(tǒng)》課程設計--模擬文件管理系統(tǒng)(文件)

2024-12-10 15:58 上一頁面

下一頁面
 

【正文】 始化沒有索引文件目錄 memset(, 39。 //區(qū)域的后 BLOCK_SIZE * BLOCK_COUNT個單元用來存儲數(shù)據(jù) if ( == NULL) { cout系統(tǒng)初始化失敗。 strcpy(, )。 //初始化的用戶沒有密碼,且類型為用戶組 = NULL。//初始化當前路徑 //創(chuàng)建一個根目錄 base = CreateFileElement(pub, root, dir, NULL, NULL)。 } else { //下面是初始化用戶列表 =0。 if(!fs) { cout讀取用戶文件失敗,系統(tǒng)將自動退出。 } //cout成功。 fspUserName。 pNextUser=NULL。 } return true。 coutHELP\t提供 文件系統(tǒng) 命令的幫助信息 \n。 coutDEL\t刪除文件或文件夾 \n。 printf(%s/root%s, , )。 for (c = 0。 = 1。 = base。 break。 return false。 if (strcmp(filename, ) == 0) { printf(對不起,文件名不能為空。 memset(buf, 39。 int k=0。39。 i++。\t39。 //memset(display, 39。 char time[18]。.\t\tDIRendl。 strcpy(,aop)。 if (strcmp([i].ParentName, FileName) == 0 amp。 [i].effect == 1) { cout[i].creatTime39。 cout\t\tDIR\t\t39。\t39。 } //====================================================================================== // 函數(shù)介紹:創(chuàng)建一個文件夾 // 輸入?yún)?shù):文件夾名 void Mkdir(char *filename) { if (strcmp(filename, ) == 0) { printf(對不起,文件夾名不能為空。 } //========================================================================================= //函數(shù)介紹:從當前文件夾進入另外一個文件夾,可以是自己父親的文件夾,也可以是自己 兒子的文件夾 //輸入?yún)?shù):文件名稱 void Cd(char *path) { int flag = 0。i++) { //如果是其父節(jié)點的話,需要匹配的條件是:(有與所在目錄相同的父節(jié)點、兩者在同一個層次、文件有效、兩者的名字相同、其父節(jié)點必須是文件夾) if(strcmp([i].ParentName, FileName) == 0 amp。 [i].effect == 1amp。 [i].Type == dir) flag = 1。 //將當前狀態(tài)的文件夾父親節(jié)點 賦值給 馬上進入的節(jié)點 for (unsigned i = strlen() 1。) { splitDisplayCou++。 memset(, 39。 } } else { //如果是兒子節(jié)點 的話,會進入下一層。 i++) { if (strcmp([i].ParentName, FileName) == 0 amp。 [i].effect == 1 amp。 。 strcmp([i].FileName, path) == 0) { strcpy(display, 文件存在。 [i].FileLevel == amp。 for (unsigned i = 0。, COMMAND_LEN)。 } } } char temppath[COMMAND_LEN] 。 i) { if ([i] == 39。 //分割符出現(xiàn)的次數(shù) if(strcmp(path, ..) == 0) //返回上一級目錄 ,即父目錄 { //如果層數(shù)夠的話 if ( 0) { 。 strcmp([i].FileName, path) == 0 amp。 [i].FileLevel == amp。 //進行對索引文件搜索 for(i=0。 } else { //文件夾是沒有文本內(nèi)容的,參數(shù)分別表示為 (權限、文件名稱、文件類型、文件內(nèi)容、文件的父親指針) CreateFileElement(protect, filename, dir, NULL, )。 //cout[i].filecontent。endl。[i].FileName。 [i].FileLevel == amp。 i 。\t39。 couttime39。, COMMAND_LEN)。 } printf(%s/root%s, , )。 return。 if(k == 3) break。//記錄字符串中字符的個數(shù) while(k!=3) { buf[i] = getchar()。, MAX_FILE_SIZE)。 } else { char *buf。 } } //================================================================================================== // 函數(shù)介紹:創(chuàng)建一個文件 //只需修改全局變量 ,返回值為空。 if (c = LOGIN_COUNT) //非法用戶 { printf(\n對不起,您不是該系統(tǒng)用戶,按任意鍵退出系統(tǒng)。 //showhelp()。 = 0。 c++) { int i = 0。 } //======================================================================================== // 函數(shù)介紹:系統(tǒng)登錄模塊 // 返 回 值: true 登錄成功, false 登錄失敗 bool Login(void) { char username[USER_NAME_SIZE]= 。 coutDIR\t顯示一個目錄中的文件和子目錄 \n。 coutCREAT\t創(chuàng)建文件 \n。 } //=============================================================================================== //展示幫助菜單 //showhelp() void showhelp(void) { cout有關某個命令的詳細信息,請鍵入 HELP 命令名 \n。 =p。 fsppassword。 while(!())//將系統(tǒng)用戶載入 { pUser p=(pUser)malloc(sizeof(struct User))。 Sleep(3000)。 fstream fs。 。 = 0。 strcpy(,)。 return false。, )。 //文件塊的首地址是從給定的地址減去分配給位示圖之后的初始地址 //因為是模擬系統(tǒng),為簡化問題,暫定一個文件或文件夾(一個文件元素)最多占用一個文件塊,一個文件塊只放一個文件元素 = sizeof(FileIndexElement) * BLOCK_COUNT + sizeof(unsigned) * 2。 //作用,將從位示圖的初始地址到,位示圖大小的這段空間都置為空,空用 39。 //初始化位示圖 = 。 。 pold = pnew。 //分別將每個文件塊初始化,并將其文件塊大小的空間 格式化。 poldFileBlockAddr = datahead + i * blockcap。 for ( unsigned i = 0。 } FileBlock *head。 } else { AddFileIndex(blankFileBlockId, , filename, parentFileName,type)。 [i].FileLevel == amp。i++) { if(strcmp([i].FileName,filename)==0 amp。 fsFileData = (char *)fs + sizeof(FSElement)。 fsFileData = NULL。 strcpy(fsLastModTime, fsCreateTime)。 //文件的創(chuàng)建者 GetCurrent_Time(fsCreateTime)。 } //查找第一個空白塊的地址 if (blank == NULL) { printf(未找到一個文件塊的地址 \n)。 return NULL。 [i].FileLevel == amp。i++) { //判斷是否有完全相同的文件,(文件名,文件是否有 效,文件的層次,文件的類型) if (strcmp([i].FileName,filename)==0 amp。 //blank為找的空白文件塊的地址 FSElement *fs = (FSElement *)blank。 break。 break。 break。 break。 int xor。 } //================================================================================================== // 函數(shù)介紹:更新位示圖 // 輸入?yún)?shù): fileblockid 文件塊 ID 更改對應的位示圖 void UpdateBitMap(unsigned fileblockid) { //計復所在位示圖的位置 int dirInBitmap = ((int)(fileblockid / 8))。 } [].Index = 。 if (parentname == NULL) { memset([].ParentName, 39。 //將兩者拼接在一起,并用空格隔開 } //================================================================================================================= // 函數(shù)介紹:更新文件索引 // 輸入?yún)?shù): fileblockid 文件塊 ID void AddFileIndex(unsigned fileblockid, unsigned filelevel, char *filename, char *parentname,FileType temp) { [].FileBlockId = fileblockid。 //獲得日期 _strtime(tbuffer)。 //沒有找到,返回空。
點擊復制文檔內(nèi)容
高考資料相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1