您的位置:首页 > 其它

内存操作函数: calloc

2014-09-01 17:32 190 查看
函数:void* calloc(size_t num,size_t size); num为元素个数,size为每个元素的字节长度。

头文件 malloc.h

在内存的动态存储区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。

用于在取得一块数组空间,数组元素初始化为0.

一般使用后要使用 free(起始地址的指针) 对内存进行释放。

跟malloc的区别:

calloc在动态分配完内存后,自动初始化该内存空间为零,而malloc不初始化,里边数据是随机的垃圾数据。

#include <stdio.h>//头文件
#include <stdlib.h>
#include <malloc.h>

using namespace std;

int main()
{
double* doub;
size_t size=16;
size_t num=5;
doub=(double*)calloc(num,sizeof(double));

for(int i=0;i<5;++i)
cout<<&doub[i]<<" "<<doub[i]<<endl;
free(doub);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: