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

📄 recycle.h

📁 按序分配策略实现资源分配
💻 H
字号:
#include "order.h" 
int recycle()
{
	int s,len,t1=0,t2=0,t3=0,i,j;
	printf("请输入回收区的起始地址:\n");
	scanf("%d",&s);
	printf("请输入回收区的大小:\n");
	scanf("%d",&len);
	for(i=0;i<6;i++)
	{
		if((empty[i].add_begin==s+len)&&(empty[i].state==0))//新空闲区的起始地址等于s+len 
		{                                                   //则将分配了的空间len收回,且
                                                            //再将空闲区的起始地址减去len
                                                            //就得到了收回空间后的起始地址 
			len+=empty[i].size;
			t1=1;
			for(j=0;j<6;j++)
			    if((empty[j].add_begin+empty[j].size==s)&&(empty[j].state==0))
				{
					empty[i].state=1;
					empty[j].size=empty[j].size+len;
					t2=1;
					break;
				}
			if(t2==0)
			{
				empty[i].add_begin=s;
				empty[i].size=len;
				break;
			}
		}
	}
	if(t1==0)
	{
		for(i=0;i<6;i++)
		{
			if((empty[i].add_begin+empty[i].size==s)&&(empty[i].state==0))
			{
				empty[i].size+=len;
				t3=1;
				break;
			}
			if(t3==0)
				for(j=0;j<6;j++)
					if(empty[j].state==1)
					{
						empty[j].add_begin=s;
						empty[j].size=len;
						empty[j].state=0;
						break;
					}
		}
		
	}

return 1;
}

⌨️ 快捷键说明

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