赵幼斌五段太极拳:帮忙realloc函数

来源:百度文库 编辑:中科新闻网 时间:2024/05/11 16:37:22
我在看《数据结构——C语言》,在线性表的顺序表示那一节,线性表的插入,如果长度超过已分配的空间,要重新分配一个大一点的空间
if(L.length>=L.listsize)
{newbase=(ElemT *)realloc (L.elem,L.listsize+LISTINCREMENT)*sizeof(ElemT));
if(!L.elem)exit(OVERFLOW);
L.elem=newbase;
L.listsize+=LISTINCREMENT;
}

这样就行了么?为什么不把原表的结点值依次赋给新分配的地址?
顺便请给小弟详细说一下realloc好么?

谢谢了

realloc会自动把之前空间里的数据放到新空间中