/** * 向内存中归还内存块 * @param free_list 待操作的空闲分区链表 * @param assign_list 待操作的分配分区链表 * @param begin 待归还内存块的起始地址 * @param end 待归还内存块的结束地址 * @return 归还成功返回true,否则返回false */ bool RetSpace(LinkList free_list, LinkList assign_list, int begin, int end) { /***begin 补全以下代码***/
时间: 2023-07-23 17:31:07 浏览: 79
Loadrunner中web_reg_save_param的使用详解
5星 · 资源好评率100%
遍历分配分区链表,查找起始地址和结束地址都符合的分区,将其从分配分区链表中删除,并插入到空闲分区链表中。若找不到符合条件的分区,则返回false。
具体实现如下:
```
LinkList p = assign_list->next, pre = assign_list;
while (p) {
if (p->begin == begin && p->end == end) { //找到符合条件的分区
pre->next = p->next; //从分配分区链表中删除
Insert(free_list, p); //插入到空闲分区链表中
return true;
}
pre = p;
p = p->next;
}
return false; //找不到符合条件的分区
```
阅读全文