0

在 MARS 模拟器上使用 MIPS ISA 读取 midi 文件后,我试图将解码的事件存储在一个数组列表中,该列表将在每个事件的播放时读取。因为包含数据结构是一个数组列表,所以它必须能够动态收缩和增长。

在我的方案中,每个事件将作为两个单词存储在一个数组中。这意味着每次我向数组列表中添加一个元素时,列表必须增加 8 个字节。

我的问题是如何为分配期间不知道大小的数组动态分配足够的内存?然后我将如何浏览这个创建的列表?

4

1 回答 1

1

要么在程序开始时从堆中为数组分配最大可能大小,要么使用不同的数据结构,例如链表,可以零碎地分配。

于 2013-04-22T23:46:10.420 回答