realloc
来自cppreference.com
| 在头文件 <stdlib.h> 中定义
|
||
| void *realloc( void *ptr, size_t new_size ); |
||
重新分配给定的内存区域。该区域必须之前曾被malloc()、calloc()或realloc()所分配并且未被free()所释放,否则,其结果是未定义的。
重新分配以下面两者之一完成:
a) 扩大或收缩目前
ptr所指向的区域,若可能的话。区域中的内容保持不变,直至到达新旧大小中较小的一个。如果区域被扩大,数组中新部分的内容是未定义的。b) 分配一个新的
new_size字节大的内存块,将和新旧大小中较小的一个一样大的内存区域复制过来,并释放旧的块。如果内存不足,旧的内存块不会被释放并且返回空指针。
目录 |
[编辑] 参数
| ptr | - | 指向要被重新分配的内存区域 |
| new_size | - | 数组新的大小 |
[编辑] 返回值
指向新分配的内存开始位置的指针,或者在错误发生时为NULL。该指针必须用free()释放。
[编辑] 示例
| 本章尚未完成 原因:暂无示例 |
[编辑] 参见
| C++ documentation for realloc
|