C动态生长阵列
我有一个程序,读取游戏中实体的“原始”列表,我打算制作一个数组,其中包含一个不确定数量实体的索引号(Int),用于处理各种事情。我希望避免使用过多的内存或CPU来保存这些索引.
到目前为止,我使用的一个快速而肮脏的解决方案是在主处理函数(本地焦点)中声明具有最大游戏实体大小的数组,并声明另一个整数,以跟踪列表中添加了多少。这并不令人满意,因为每个列表都有3000多个数组,这不是很多,但感觉很浪费,因为我可能会为6-7个列表使用这个解决方案来处理不同的函数。
我还没有找到任何C(不是C+或C#)特定的解决方案来实现这一点。我可以使用指针,但我有点害怕使用它们(除非这是唯一可能的方法)。
数组不离开本地函数作用域(它们将传递给函数,然后丢弃),以防发生变化。
如果指针是唯一的解决方案,我如何跟踪它们以避免泄漏?