C标准库之内存操作函数——_expand
本帖最后由 漩涡鸣人 于 2014-9-13 19:35 编辑功能:_expand函数用于改变已分配内存字节数
函数原型:void * _expand(void * memblock, size_t size);
参数:
参数说明
memblock已分配内存的首地址
size改变后的字节数
返回值:改变字节数后的内存块首地址
要求:
函数需要的头文件
_expand<malloc.h>
举例:#include <stdio.h>
#include <malloc.h>
int main(void)
{
int * buf;
buf = (int *)malloc(20 * sizeof(int));//获得一块整型数组空间, 20个元素
printf("已分配内存大小:%d\n", _msize(buf));
buf = (int *)_expand(buf, 100 * sizeof(int));//重新分配为100个元素
printf("重新分配内存大小:%d\n", _msize(buf));
free(buf);//释放数组空间
return 0;
}
运行结果:
页:
[1]