-
C 库函数 - calloc()
C 库函数 void *calloc(size_t nitems, size_t size) 分配所需的内存空间,并返回一个指向它的指针。
malloc 和 calloc 之间的不同点是,malloc 不会设置内存为零,而 calloc 会设置分配的内存为零。
注意:calloc() 函数将分配的内存全部初始化为零。
如果不需要初始化,可以使用 malloc() 函数代替。
另外,使用 calloc() 函数时需要注意,如果分配的内存块过大,可能会导致内存不足的问题。
声明:
void *calloc(size_t nitems,size_t size)
//nitems -- 要被分配的元素个数
//size -- 元素的大小
返回值:
返回指针,指向已分配的内存;如果是空的话,则返回NULL。
#include<stdio.h>
int main()
{
int i,n;
int *a;
printf("输入的个数");
scanf("%d",&n);
a=(int *)calloc(n,sizeof(int));
printf("输入%d个数字:\n",n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
printf("输入的数字为:");
for(i=0;i<n;i++){
printf("%d",a[i]);
}
free(a);//释放内存
return(0);
}
输入示例: