【发布时间】:2009-10-18 01:08:10
【问题描述】:
我有一个似乎是malloc 背后的代码的代码块。但是当我浏览代码时,我感觉部分代码丢失了。有谁知道是否缺少功能的一部分? malloc 是否总是将相邻的块组合在一起?
int heap[10000];
void* malloc(int size) {
int sz = (size + 3) / 4;
int chunk = 0;
if(heap[chunk] > sz) {
int my_size = heap[chunk];
if (my_size < 0) {
my_size = -my_size
}
chunk = chunk + my_size + 2;
if (chunk == heap_size) {
return 0;
}
}
【问题讨论】:
-
格式化确实有助于您的问题和您的代码。
-
...我尝试解决语法和清晰度问题...
-
@Chris Lutz - 很抱歉。 :)
标签: c malloc implementation heap-memory