785
1、判断当前指针是否有足够的连续空间。如果足够,扩大ptr指向的地址并返回。
如果不够,如何根据size指定的大小分配空间,将原始数据复制到新分配的内存中,然后释放原始ptr指向的区域。
2、使用内存后,应使用free()函数释放,但原指针自动释放,无需使用free。
实例
#include<stdio.h> #include<stdlib.h> intmain() { char*str; /*一开始的内存分配*/ str=(char*)malloc(15); strcpy(str,"HelloWorld!"); printf("String=%s\n",str); /*重新分配内存*/ str=(char*)realloc(str,25); strcat(str,",C"); printf("String=%s\n",str); free(str); system("pause"); return0;