realloc怎么运作?
int *p;int *q;
p=(int *)realloc(q,sizeof(int));
q=p;
为什么最后还要加上q=p?
[解决办法]
realloc是重新调整空间大小的,关于那个q=p是没什么用的,有点画蛇添足的感觉。
下面我写一个小例子
char *空间指针;//定义一个指针空间指针=(char *)malloc(1024);//在内存上开辟一个1024字节大的空间,并把这个空间的地址存放进“空间指针”里。空间指针=(char *)realloc(空间指针,512);//新申请一个512字节大的空间,把地址存放进“空间指针”里,并把旧空间里的数据复制到新空间里,然后释放旧空间。