realloc的一个问题?

piaozi2003 2004-04-05 04:46:09
char *p已经指向一段内存空间,现在扩大这段空间
char *s=NULL; //备用指针,以免内存分配失败丢失原有信息

s=realloc(p,NEWSIZE * sizeof(*p));
if(NULL!=s)
{
p=s;
}
那如果一切OK,那p原来指向的空间由谁来释放?我试图在p=s之前加
一段free(p),编译通过,执行时得到的是错误的结果。
...全文
43 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
aspvbjava 2004-09-18
  • 打赏
  • 举报
回复
realloc成功的话,p原来的空间系统自动释放,失败的话需要你释放

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧