【发布时间】:2012-07-23 08:54:00
【问题描述】:
任务是将二进制文件解析到内存中。但是,我不知道需要分配多少内存。
哪种方法更可取:在解析例程中执行多个小型 malloc,或者首先遍历文件以确定所需的内存量,然后再次解析?
感谢任何提示。
【问题讨论】:
-
你尝试过指数方法吗?
-
用空间效率低下换取时间效率的优势,难道你不能根据stat()或其等价物进行初始分配,甚至避免初始遍历吗?
-
@KeithFlower 听起来像是在谈论内存结构,而不仅仅是原始字节。
-
@pst - 嗯,是的,我假设 parsed-structure-in-memory
-
我很感兴趣——你说你正在将它解析到内存中——你的意思是把它解析成许多更小的可变大小的结构吗?如果是这样,您将如何在一个 malloc 中分配它们?
标签: c malloc binaryfiles