【发布时间】:2010-12-29 15:06:04
【问题描述】:
我已经声明了这个变量:
float (**explosions)[4];
这将指向一个内存块,该指针指向具有 4 个浮点数的浮点数组的内存块。
当创建指向浮点数组的内存块的指针的内存块时,我在这里放什么。我应该只使用 void 指针吗?这将是一个选择,但不是一个好的选择。
explosions = realloc(explosions,sizeof(What goes here? It will be the size of a pointer to an array of 4 floats) * explosion_number);
在为数组创建内存块时,我猜这样可以吗?
explosions[explosion_number] = malloc(sizeof(float) * 64);
这是用 4 个元素组成 16 个浮点数组。我需要在内存中有 16 个这样的数组的原因是我可以删除冗余内存,这样我就可以将指向这些数组的指针设为 NULL,这样我就知道什么时候数组在冗余后被释放并且不需要更多处理。以防万一您想知道。
感谢您的帮助。
【问题讨论】:
标签: c arrays pointers memory-management sizeof