ios通过calloc释放2维内存的正确方法

时间:2012-10-26 03:26:30

标签: ios c free calloc

我有一个iOS应用程序。我分配2d内存,然后使用自由函数解除分配。这是免费的正确方式吗?最近我崩溃指向自由声明。我应该在循环中释放buf [i]吗?

+(int**) initArr:(int) Nr:( int) Nc 
{
int ** buf;
  buf = calloc(Nr,sizeof(int*));

for(int i = 0; i < Nr; i++)
{
    buf[i] = calloc(Nc,sizeof(int));

}
//Funny Processing 

//Release
for(int i = 0; i < Nr; i++)
    free(buf[i]);
free(buf);
}

以下是错误消息

2 libsystem_c.dylib 0x328b87ec _sigtramp + 48
3 libsystem_c.dylib 0x328ae20e pthread_kill + 54
4 libsystem_c.dylib 0x328a729e abort + 94
5 libsystem_c.dylib 0x32862380 free + 380
6 MyApp 0x0009be52 +[clsGlobalHelper resizeImageAvg:::] (clsGlobalHelper.m:300)

0 个答案:

没有答案