文件系统实验报告(3)

2019-04-08 17:25

} pu = pu->next; } } free(temp); printf(\文件%s关闭成功!\\n\ return ; } p= p->next; } puts(\要关闭的文件没有被打开!\\n\}

int read()//读文件命令 { char filename[20]; unsigned int length; AFD *p = pafd->next; puts(\请输入要读的文件名: \\n\ scanf(\ puts(\请输入要读的长度\\n\ scanf(\ while (p){ if(strcmp(filename, p->filename) == 0){ p->point += length; printf(\文件%s读取成功!\\n\ return 1; } p= p->next; } puts(\读取失败文件没有打开过!\\n\ return 0; }

int write()//写文件命令 { char filename[20]; unsigned int length; AFD *p = pafd->next; puts(\请输入要写的文件名: \\n\ scanf(\

while (p){ if(strcmp(filename, p->filename) == 0){ if(p->protect != 2){ printf(\文件%s不可写!\\n\ return 0; } puts(\请输入要写的长度\\n\ scanf(\ p->point += length; printf(\文件%s写入成功!\\n\ return 1; } p= p->next; } puts(\写入失败文件没有打开过!\\n\ return 0; }

void destroy()//释放内存 { MDF *pm = pmdf; while(pm){ pmdf = pmdf->next; free(pm); pm = pmdf; } AFD *pa = pafd; while(pa){ pafd = pafd->next; free(pa); pa = pafd; } UFD *pu = pufd; while(pu){ pufd = pufd ->next; free(pu); pu = pufd; } }

void saveUFD()//保存UFD文件 {

FILE *fp; UFD *p = pufd->next; if((fp = fopen(UserUFD, \ puts(\ exit(1); } while (p){ fprintf(fp, \ fprintf(fp, \ fprintf(fp, \ fprintf(fp, \ p=p->next; } fclose(fp); }

void exit()//推出系统 { AFD *pa = pafd->next; UFD *pu = pufd->next; while(pa){ if(pa->protect == 2){ while(pu){ if(strcmp(pa->filename, pu->filename) == 0){ pu->length = pa->point; break; } pu = pu->next; } } pa =pa->next; } saveUFD(); printUFD(); destroy(); }

void operate()//命令识别 { while(1){ char command[20]; char name[][8] = {\ puts(\请输入命令: \\n\ scanf(\ if(strcmp(command, name[0] ) == 0) create(); else if(strcmp(command, name[1] ) == 0) _delete(); else if(strcmp(command, name[2] ) == 0) open(); else if(strcmp(command, name[3] ) == 0) close(); else if(strcmp(command, name[4] ) == 0) read(); else if(strcmp(command, name[5] ) == 0) write(); else if(strcmp(command, name[6] ) == 0){ exit(); return; }else puts(\无效命令,请重新输入:\\n\ } }

void print() { puts(\文件系统\\n\ puts(\使用说明***:\\n\ puts(\本文件系统共有三个用户分别是user1 user2 user3\\n\\ 系统命令有create, delete, open, close,read, write,exit\\ \\nexit----------------------------------------退出系统\}

int main() { print(); initMDF(); checkuser(); initAFD();

}

operate();//命令识别

return 0;


文件系统实验报告(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:自动售报机的设计-毕业设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: