我正在尝试用 fscanf() 提供数组,同时循环遍历包含整数列表的文件,n 个整数长。看来我需要使用 malloc 和/或可能需要重新分配。我听说 malloc 命令需要大量的执行时间,最好过度分配。有人介意帮助我了解实现这一目标的基石吗?
免责声明:我是 C 的新手。
最佳答案
不,您所听到的是误导性的(至少对我而言)。 malloc
只是一个函数,而且通常速度很快。
- 大部分时间它在用户空间中完成所有工作。它“过度分配”,因此您不必
- 簿记(带有空闲 block 的链表等)是高度优化的,因为几乎每个人都使用
malloc
认为您可以在这场比赛中轻松击败 malloc
是不现实的。如果这不能回答您的问题(这很笼统),我很抱歉,但您必须意识到没有可以轻松实现的 (spoon) 优化。
关于C - 动态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6751111/