c语言中,malloc和free是什么意思?

来源:百度知道 编辑:UC知道 时间:2024/06/21 03:12:50
c语言中,malloc和free是什么意思?
请说的具体点啊!

malloc和free是C语言中申请内存空间与释放内存空间的函数。


函数原型:void *malloc(unsigned int size);

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

返  回 值:指向所分配的连续存储域的起始地址的指针,若失败,返回NULL


函数原型:void free(void *p);

功       能:释放指针p所指向的内存区

返  回 值:无


举例如下:

int *p;  // 定义一个int类型的指针
p = (int *)malloc(4);  // 分配4个连续的内存单元给指针p
free(p);  // 释放指针p所指向的内存单元

malloc是申请分配一块内存区域来存放指针
free是释放申请区域
用法:
malloc
http://baike.baidu.com/view/736228.html?wtp=tt
free
http://baike.baidu.com/view/512783.htm

malloc是动态分配空间的意思。
一般用法
int *t=NULL;
t=(int *)malloc(sizeof(int));
也可以