您的位置:首页 > 其它

malloc和calloc

2016-06-07 16:00 225 查看
void *malloc(unsigned int num_bytes);


功能:分配长度为num_bytes字节的内存块

malloc()

malloc()函数用来分配内存:将总共需要的字节数作为参数传递给该函数,返回值是指向最新分配的内存的指针,而如果内存没有分配好,则返回值是NULL。

malloc()的使用技术:

some_type *pointer;
pointer = malloc(count * sizeof(*pointer));


calloc()

原型如下:

void *calloc(unsigned int num ,unsigned int size);


函数calloc()用于给若干同一类型的数据项分配连续的存储空间,其中每个数据项的长度单位为字节。通过调用函数calloc()所分配的存储单元,系统将其自动置初值0;

第一个参数num表示向系统申请的内存空间的数量,第二个参数size表示申请的每个空间的字节数。若函数调用bu8chenggong,函数将返回空指针(NULL),若函数调用成功,将返回一个void类型的连续存储空间的首地址,如果将该地址赋给某个指针,则应先根据该指针的基类型,将返回值进行相应的类型转换,然后进行赋值操作。

例如:

“`

float *pf = NULL;

pf = (float*)calloc(10,sizeof(float));

“`表示系统申请10个连续的float类型的存储单元,并用指针pf指向该连续存储单元的首地址,系统申请的总的存储单元字节数为10*sizeof(float);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: