我有以下循环(代码简化(:
for (int y = 0; y < 20; y++) {
self.array[y].numbers = [self getNumberData:source objectPass:object];
}
这将调用 get NumberData 方法。在此代码中使用了 malloc 方法,例如:
object->item1 = malloc(sizeof(Class) * object->item2);
我的问题是如何正确释放错误定位的内存?
self.array[y].numbers 是一个 C 结构。
我可以只在 dealloc 方法中放置自由(数组(吗?
谢谢。
必须将 malloc
返回的指针传递给 free
。
因此,如果您已经malloc
在一个膨胀的 foop 中编辑了整个结构数组,您也可以(并且必须(free
整个事情。
如果已单独malloc
编辑每个结构,则还必须free
每个结构。