allocation的函数命名。
语法为:
指针名=(数据类型*)realloc(要改变内存大小的指针名,新的大小)。
头文件(这个在算法设计里不必计较毕竟变量都不需要声明,数据类型也是抽象数据类型ADT):
#include 有些编译器需要#include,在TC2.0中可以使用alloc.h头文件
功能【需要理解明白才能正确地用】:
先判断当前的指针是否有足够的连续空间,如果有,扩大mem_address指向的地址,并且将mem_address返回,如果空间不够,先按照newsize指定的大小分配空间,将原有数据从头到尾拷贝到新分配的内存区域,而后释放原来mem_address所指内存区域(注意:原来指针是自动释放,不需要使用free),同时返回新分配的内存区域的首地址。即重新分配存储器块的地址。
返回值【意料之内】:
如果重新分配成功则返回指向被分配内存的指针,否则返回空指针NULL。
注意:
这里原始内存中的数据还是保持不变的。当内存不再使用时,应使用free()函数将内存块释放。
相关函数:
malloc、calloc、free、_alloca
……
【索引标识符】【个人与社会**模板】
总结
本章还未完,请点击下一页继续阅读>>>