⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 模拟内存分配的c语言实现 六、 实验目的 了解用户程序分配内存以及回收所用内存的过程
💻 C
字号:
#include "header.h"
#include "initial.c"
#include "checkspacefordischarge.c"
#include "adjust.c"
#include "ApplySpace.c"
#include "DischargeSpace.c"

void main()
{
        char name[20],sel;
        int size=0,flag=0;
        BLOCK *p;

        textmode(BW80);
        initial();
        while(!flag)
        {
                clrscr();
                printf("[1] Apply space\n[2] Release space\n[3] Quit\nPlease enter your choice:");
                sel=getch();
                putchar(sel);
                printf("\n");
                switch(sel)
                {
                        case '1':
                                printf("Name:\n");
                                gets(name);
                                printf("Size:\n");
                                scanf("%d",&size);
                                ApplySpace(name,size);
                        	break;
                        case '2':
                                printf("Name:\n");
                                gets(name);
                                printf("Size:\n");
                                scanf("%d",&size);
                                DischargeSpace(name,size);
                        	break;
                        case '3':
                                flag=1;
                        	break;
                }
               /*ApplySpace(name,100);*/
                clrscr();
                if(!flag)
                {
                        printf("The free table:\n\n");
                        p=FreeBL->next;
                        while(p)
                	{
                                printf("startaddress:%d\nendaddress:%d\nlength:%d\n",p->startaddress,p->endaddress,p->length);
                                p=p->next;
                	}
                        printf("\n\n");
                        printf("The allocated table:\n\n");
                        p=AllocateBL->next;
                        while(p)
                	{
                                printf("name:%s\nstartaddress:%d\nendaddress:%d\nlength:%d\n\n",p->name,p->startaddress,p->endaddress,p->length);
                                p=p->next;
                  	}
                        printf("\nPress anykey to continue...");
                        getch();
                }
                
                flushall();
        }
}

⌨️ 快捷键说明

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