!请问:在子函数中用malloc给指针分配空间,到主函数中就没了。那么怎么在子函数中分配空间?
答案:3 悬赏:10 手机版
解决时间 2021-03-06 20:34
- 提问者网友:凉末
- 2021-03-06 15:01
!请问:在子函数中用malloc给指针分配空间,到主函数中就没了。那么怎么在子函数中分配空间?
最佳答案
- 五星知识达人网友:白昼之月
- 2021-03-06 16:32
代码贴出来吧
我猜可能是你在子函数里面定义了一个指针变量存放这个动态分配的空间,但函数结束后没有返回这个指针变量的值,导致在主函数里面找不到这个地址
我猜可能是你在子函数里面定义了一个指针变量存放这个动态分配的空间,但函数结束后没有返回这个指针变量的值,导致在主函数里面找不到这个地址
全部回答
- 1楼网友:怀裏藏嬌
- 2021-03-06 18:08
malloc更new差不多,分配空间后除非用了他们相应的删除函数free和delete,不然知道程序终止,分配的空间都存在。你在主函数中没找到,可能是你调用语句不对。
- 2楼网友:时间的尘埃
- 2021-03-06 17:10
返回一个指针,或传递一个指向指针的指针为参数
char *getmemory3(int num)
{
char *p = (char *)malloc(sizeof(char) * num);
return p;
}
void getmemory2(char **p, int num)
{
*p = (char *)malloc(sizeof(char) * num);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯