函数里面使用malloc的问题
答案:2 悬赏:60 手机版
解决时间 2021-03-03 03:41
- 提问者网友:留有余香
- 2021-03-02 03:28
一个函数返回类型为指针,函数内部malloc了一块内存,处理后将该内存return给函数调用者。我的问题是,这部分malloc出来的内存应该在哪里free掉呢?应该如何操作??
最佳答案
- 五星知识达人网友:雪起风沙痕
- 2021-03-02 04:01
必须使用指针来接收改函数的返回值,可以通过该指针来释放内存
void *GetMemory(int size)
{
return malloc(size);
}
void main()
{
void *p = GetMemory(100);
free(p);
p = NULL;
}
void *GetMemory(int size)
{
return malloc(size);
}
void main()
{
void *p = GetMemory(100);
free(p);
p = NULL;
}
全部回答
- 1楼网友:十年萤火照君眠
- 2021-03-02 04:52
malloc的原型是: void* malloc(size_t size); 这个函数是用来临时分配可用内存的,size就是你需要的内存大小。它的返回值是分配好的内存空间地址。 你这里就是分配了n*m个double类型的空间,然后把地址转换为double*类型再赋值给p。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯