2

我们实际上需要手动分配存储空间是什么?

我能想到的唯一可能的任务是处理不适合 32 位整数的更大二进制数据。

它是否正确?其他用例是什么?

4

2 回答 2

2

通常,每次在编译时不知道数据大小时,您都需要进行手动存储分配。几乎所有情况都分为两类:

  • 您的程序必须从文件/网络/用户输入等中读取数据,并且在编译时不知道该数据的确切数量,或者
  • 您的程序必须产生并存储一些输出,而在您编写程序时,您不知道该输出的确切数量。

当精确大小在运行时确定时,许多非常常见的数据结构假定能够分配任意大小的内存。这样做可以让数据结构动态地“增长”和“收缩”,因为程序的存储需求会随着时间和它处理的数据量而变化。

于 2013-02-25T15:57:49.200 回答
0

大量的例子。分配内存以填充结构,例如链表结构。

于 2013-02-25T15:54:32.687 回答