作者:手机用户2602906647 | 来源:互联网 | 2023-05-17 18:46
函数:void*calloc(size_tnum,size_tsize);num为元素个数,size为每个元素的字节长度。头文件malloc.h在内存的动态存储区中分配n个长度为size的
函数:void* calloc(size_t num,size_t size); num为元素个数,size为每个元素的字节长度。
头文件 malloc.h
在内存的动态存储区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。
用于在取得一块数组空间,数组元素初始化为0.
一般使用后要使用 free(起始地址的指针) 对内存进行释放。
跟malloc的区别:
calloc在动态分配完内存后,自动初始化该内存空间为零,而malloc不初始化,里边数据是随机的垃圾数据。
#include //头文件
#include
#include
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]<<" "<
free(doub); return 0; }