console.cpp

来自「模拟Linux文件系统 在任一OS下」· C++ 代码 · 共 44 行

CPP
44
字号
#include"disk.h"
extern disk DISK;
void builddir(char*name,inode ite){
	freebitmap fbm(DISK.iof);
	int t=fbm.freebitmap_applyfor();
	fbm.freebitmap_set(t);
	if(t==-1){
		cout<<"there is no enough free block"<<endl;
		return;
	}
	inode itemp;

	itemp.address[0]=t;
	itemp.file_size=2;
	inodelist_disk ild(DISK.iof);
	int j=ild.inodelist_disk_applyfor();
	itemp.inode_num=j;
	ild.inodelist_disk_write(j,itemp);//根据inode号写表
	//////////////////////
	folder ftemp(DISK.iof,ite);
	int s=ftemp.folder_applyfor();
	folderitem fitemp;
	strcpy(fitemp.filename,name);
	fitemp.inodenum=j;
	ftemp.folder_write(s,&fitemp);//原文件写项
	//////////////////////
	ftemp.folder_open(DISK.iof,itemp);
	s=ftemp.folder_applyfor();
	strcpy(fitemp.filename,name);
	fitemp.inodenum=j;
	ftemp.folder_write(s,&fitemp);
		//////////////////////
	s=ftemp.folder_applyfor();
	strcpy(fitemp.filename,name);
	fitemp.inodenum=ite.inode_num;
	ftemp.folder_write(s,&fitemp);
}
void browser(int i){
	inodelist_disk ild(DISK.iof);
	inode itemp;
	ild.inodelist_disk_read(i,&itemp);
	folder ftemp(DISK.iof,itemp);
	ftemp.folder_browse();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?