下面三个函数用于存储空间动态分配:
#include <stdlib.h>
void* malloc (size_t size);
void* calloc (size_t num, size_t size);
void* realloc (void* ptr, size_t size);
//成功返回非空指针,出错返回NULL
- malloc函数分配指定字节数的存储区,此存储区的初始值不确定。
- realloc函数使我们增,减以前分配的存储区长度,该函数中,最后一个参数使存储区的新长度不是新,旧存储区的长度差。
- calloc() 在内存中动态地分配 num 个长度为 size 的连续空间,并将每一个字节都初始化为 0。所以它的结果是分配了 num*size 个字节长度的内存空间,并且每个字节的值都是0。
free函数释放ptr指向的存储空间:
#include <stdlib.h>
void free(void *ptr)
以上内容来源于网络,仅作本人学习笔记使用,关于本书请参考APUE