动态分区代码
include include<stdio.h> include<stdlib.h> include<windows.h> using namespace std; typedef struct freetable { long start; //空闲表起始地址 long length; //空闲长度 long state; //空闲块状态 struct freetable *next; //下一个空闲区的表头 }freetable; freetable flist=NULL, blist=NULL; //有两个表,一个表空闲表,一个分配表 long nfree=0; //用顺序的任务号来标记分配表的头 int initializtion(int i); //初始化链表,i=1时为空闲区,i=2时分配区 int showlist(int i); //查看表,i=1时为空闲区,i=2时分配区 int sortlist(int i); //排序空闲区表,1最先适应算法按照起始地址递增,2最佳适应算法按分区从小到大,3最坏适应算法按分区从大到小 int firstbest(long j,long cnum,long csize); //j:1最先适应算法,2最佳适应算法 int worstfit(long cnum,long csize); //最坏适应算法 int recover