资源简介
使用C语言实现内存的动态分配与释放的模拟
代码片段和文件信息
#include
#include
#include
#define SIZE 512//内存总容量
#define size 2//基本内存大小
static int temp;
typedef struct Area
{
int m_size; //空闲大小
int b_size; //分配大小
int flag; //表示当前节点的状态,0表示节点为空闲区,1表示节点为以分配区
struct Area *next; //链接指针
} SubAl;
/*---------------------------删除节点----------------------------------*/
void Delete(SubAl **Head SubAl *del)
{
SubAl *Fp = NULL; //查找待删结点的上一个结点
Fp = *Head; //指向头结点,开始查找定点的上一个结点
while (Fp->next != del) //否则循环遍历
{
Fp = Fp->next;
}
Fp->next = del->next; //删除结点
}
/*---------------------------检查分配区----------------------------------*/
void Check(SubAl **Head)
{
SubAl *p = NULL *q = NULL;
p = *Head;//指向头结点
q = p->next;//指向头结点的下一个结点
//如果下一个结点不为空,判断他的状态是否为空分区,头结点的
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-03-21 09:35 操作系统~动态分配与释放\
文件 460 2010-11-25 00:54 操作系统~动态分配与释放\menu.txt
文件 5544 2010-11-25 01:33 操作系统~动态分配与释放\subarea.c
文件 4305 2010-11-13 10:21 操作系统~动态分配与释放\分区分配.dsp
文件 541 2010-11-13 09:27 操作系统~动态分配与释放\分区分配.dsw
文件 396288 2010-11-25 01:39 操作系统~动态分配与释放\分区分配.ncb
文件 54784 2010-11-16 15:32 操作系统~动态分配与释放\分区分配.opt
文件 896 2010-11-16 15:30 操作系统~动态分配与释放\分区分配.plg
文件 889 2010-11-24 22:33 操作系统~动态分配与释放\分区分配.sln
文件 9216 2010-11-25 01:39 操作系统~动态分配与释放\分区分配.suo
文件 5186 2010-11-24 22:33 操作系统~动态分配与释放\分区分配.vcproj
文件 1427 2010-11-25 01:39 操作系统~动态分配与释放\分区分配.vcproj.PC-201009031605.Administrator.user
评论
共有 条评论