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

正文內(nèi)容

操作系統(tǒng)設(shè)計(劉星)(編輯修改稿)

2025-08-03 14:06 本頁面
 

【文章內(nèi)容簡介】 STDIR(void) /*顯示目錄*/{ int i,flag=0。 for(i=0。i32。i++) { if(fil[i].firstblockaddr!=0) { if(flag==0) printf(文件名 大小 創(chuàng)建日期\n)。 flag=1。 printf(%s%8ld%4d%4d%4d\n,fil[i].filename, fil[i].filelen,fil[i].year,fil[i].month,fil[i].day)。 } }} int FCREATE(char *filename) /*創(chuàng)建文件*/{ int i,flag=0,j,k=0,flag1=0,flag2=0,a。 int n,m。 a=strlen(filename)。 if(a10) return 1。 for(i=0。i*BlockSize/DirSize。i++) /*查找是否重名*/ if(strcmp(filename,fil[i].filename)==0) {printf(文件名已存在!\n)。 return 3。}for(i=(++)。i。i++) if(fat1[i]==0) /*查看是否有空的塊*/ flag++。 if(flag==0) { printf(磁盤已滿)。/*統(tǒng)計結(jié)果為0,則磁盤已滿*/ return 0。 } printf(空閑塊數(shù):%d\n,flag)。 printf(請輸入文件長度:)。 for(j=0。j32。j++) if(fil[j].firstblockaddr==0) break。 while(1) {scanf(%d,amp。dir[j].filelen)。/*輸入目錄項中文件的長度*/ n=(dir[j].filelen/BlockSize)+(dir[j].filelen%BlockSize?1:0)。 if(n0||nflag)/*文件長度小于0或大于空閑的空間 */ {printf(文件太長!\n)。 printf(請重新輸入:)。 } else break。 } for(i=(++)。i。i++)/*分配一塊空間*/ if(fat1[i]==0) { fat1[i]=1。 break。} dir[j].firstblockaddr=i+1。 strcpy(dir[j].filename,filename)。 /*輸入文件相關(guān)的信息*/ dir[j].filename[a]=39。\039。 printf(輸入年份:)。 scanf(%d,amp。dir[j].year)。 printf(輸入月份:)。 scanf(%d,amp。dir[j].month)。 printf(輸入日期:)。 scanf(%d,amp。dir[j].day)。 return (0)。} int FDELETE(char *filename) /*刪除文件*/{int i,j,k,n,flag=1。 struct FCBBlock *p。 p=fcb。 while(p) /*查看是否關(guān)閉了文件*/ { if(strcmp(filename,fil[pfdtblockindex].filename)==0) return 1。 else p=pnext。 } for(i=0。i*BlockSize/DirSize。i++) /*查找是否存在要刪除的文件*/ if(strcmp(filename,fil[i].filename)==0) { flag=1。 break。 }if(flag==0)return 2。j=fil[i].firstblockaddr。 while(1){ k=fat1[j1]。 /*將要刪除的文件的塊用0填充*/ fseek(fp,(j1)*BlockSize,0)。 fwrite(amp。fillchar,1,BlockSize,fp)。 fat1[j1]=0。 if(k==1) break。 else j=k。}memset(amp。fil[i],0,DirSize)。 /*將要刪除的文件的目錄用0填充*/return 0。}int FOPEN(char *filename) /*打開文件 */{ int i,j=0,k,flag=0,id。 struct FCBBlock *p,*q,*r。 p=fcb。 for(i=0。i*BlockSize/DirSize。i++) /*查找要打開的文件是否存在*/ if(strcmp(filename,fil[i].filename)==0) { flag=1。 break。 } if(flag==0) return 0。 if(fcb==NULL) { fcb=(struct FCBBlock *)malloc(sizeof(struct FCBBlock))。 fcbfileid=j+1。 fcbfilepos=0。 fcbnext=NULL。 fcbfdtblockindex=i。 id=j+1。 return id。 } else { while(fcb) {j++。 if(strcmp(filename,fil[fcbfdtblockindex].filename)==0) /*判斷是否已經(jīng)打開*/ return 0。 q=fcb。 fcb=fcbnext。 } r=(struct FCBBlock *)malloc(sizeof(struct FCBBlock))。 /*創(chuàng)建fcb*/ rfileid=j+1。 rfilepos=0。 rnext=NULL。 rfdtblockindex=i。 qnext=r。 } id=j+1。 fcb=p。 return id。 /*返回打開的文件的標(biāo)識fileid*/}long FGETLEN(char *filename) /*獲取文件的長度*/{ int i。 for(i=0。i*BlockSize/DirSize。i++) if(strcmp(filename,fil[i].filename)==0) return fil[i].filelen。 return 1。 }int FCLOSE(char *filename)/*關(guān)閉文件 */{ int flag=0。 struct FCBBlock *f,*p。 f=fcb。 if(strcmp(filename,fil[fcbfdtblockindex].filename)==0) { flag=1。 fcb=fcbnext。 p=fcb。 while(p) {pfileid=1。 p=pnext。 } return flag。 } p=f。 f=fnext。 while(f) { if(strcmp(filename,fil[ffdtblockindex].filename)==0) { flag=1。 p=fnext。 /*p=pnext。*/ while(p) { p=pnext。 pfileid=1。 } free(f)。 return flag。 } p=f。 f=fnext。 } if(flag==0) { printf(The file has not open!\n39。)。 return flag。 } return 0。} int FREAD(cha
點擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1