【正文】
jplength。 jp=jpnext。 } fp=p_FreeArea。 while(fp!=NULL) { fp1=fp。 fp=fpnext。 free(fp1)。 } p_FreeArea=(struct FreeArea *)malloc(sizeof(struct FreeArea))。 p_FreeAreasize=UnusedSpace。 p_FreeAreaaddress=INITADDRESS。 p_FreeAreanext=NULL。 p_FreeAreaback=NULL。 }}void menu(){ int select。 printf(\n\n\n****************MENU***************\n)。 printf(You can select one of the following:\n)。 printf((1)Require to be allocate.\n)。 printf((2)Require to collecte the size.\n)。 printf((3)Check the memory.\n)。 printf((4)Quit.\n)。 printf(***********************************\n)。 scanf(%d,amp。select)。 switch(select) { case 1: if( CurrentJobCnt=MAXJOBCNT) { printf(The job is too many)。 } else { printf(Enter your job name:)。 } scanf(%s,JobName)。 printf(Enter your job length:)。 scanf(%d,amp。JobSize)。 ffallocation()。 switch (JobAddress) { case 1: printf(the memory is full)。 break。 case 0: coalesce()。 ffallocation()。 break。 default: break。 } break。 case 2: printf(Enter the name of job:)。 scanf(%s,JobName)。 ffcollection()。 break。 case 3: break。 case 4: exit(1)。 break。 default: printf(You input a wrong number!\n)。 break。 }}void main(){ initiation()。 while (1) { menu()。 showyou()。 }} 專業(yè)整理分享