C - 动态数组

标签 c arrays dynamic malloc realloc

我正在尝试用 fscanf() 提供数组,同时循环遍历包含整数列表的文件,n 个整数长。看来我需要使用 malloc 和/或可能需要重新分配。我听说 malloc 命令需要大量的执行时间,最好过度分配。有人介意帮助我了解实现这一目标的基石吗?

免责声明:我是 C 的新手。

最佳答案

不,您所听到的是误导性的(至少对我而言)。 malloc 只是一个函数,而且通常速度很快。

  • 大部分时间它在用户空间中完成所有工作。它“过度分配”,因此您不必
  • 簿记(带有空闲 block 的链表等)是高度优化的,因为几乎每个人都使用 malloc

认为您可以在这场比赛中轻松击败 malloc 是不现实的。如果这不能回答您的问题(这很笼统),我很抱歉,但您必须意识到没有可以轻松实现的 (spoon) 优化。

关于C - 动态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6751111/

相关文章:

c - C 中的随机函数

arrays - 仅在索引存在时编辑索引

c++ - 数组下标运算符 ([ ]) 对数组有什么作用?

html - 展开式、不固定宽度、四列布局

c# - 使用 DynamicObject 存储类型信息

c - Ansi C 中的位设置和位移位

c - linux下的malloc,隐式限制

Python mysql动态添加列并更新新列中的值

无法输入 if 条件和函数返回段错误错误

c++ - 需要一些使用指针添加 C++ 数组的建议