iPhone上目标C的最大阵列大小?

时间:2010-11-07 07:27:25

标签: iphone arrays size max

我有一个非常大的数组(96,000个GLfloat类型的元素)。它之前是24,000个元素,直到我做了一些改动。现在我崩溃了。我还没有做太多的调试,但当我注意到我的一个阵列变得多么可笑时,我认为它可能值得研究。所以,我唯一的问题是96,000个元素(或384,000个字节)对于单个数组是否太多了?

3 个答案:

答案 0 :(得分:2)

在堆上应该没问题,但是你应该避免在堆栈上分配那个大小。因此,您应该使用malloc/freenew[]/delete[]来创建和销毁该大小的数组。

如果设备内存不足,您可以预期会有大量内存请求偶尔返回NULL。有些应用程序(例如照片/图像处理)请求分配数十兆字节 - 比384 KiB分配要多很多倍。

答案 1 :(得分:1)

阵列大小没有上限,节省了设备上的可用RAM量。

答案 2 :(得分:0)

我不认为它太大了。一些图像资源会占用那么多或更多的连续空间而没有问题。例如,400x400px图像将占用大约160,000 * 4 = 640,000字节的内存。我认为问题出在其他地方。