首页 > 代码库 > 动态内存分配函数与释放函数

动态内存分配函数与释放函数

(1)分配函数

void *malloc(sizeof(unsigned size)

功能:在内存的动态存储区中分配一块长度位size的连续空间。

返回值:指针,存放被分配内存的起始地址。若未申请到空间,则返回NULL(0)。

void *:指向任何类型的数据,在使用时,要进行强制类型转换。

例如:int *malloc(sizeof(int))

struct student *malloc(sizeof(struct student))

(2)释放函数

void free(void *ptr)

功能:释放由malloc()动态分配的内存空间,ptr存放该空间的首地址。

返回值:无。

例如:

struct student *p=(struct student *)malloc(sizeof(struct student))

....

free(p)//释放空间