发布于:2021-02-07 16:28:15
0
431
0
C语言中的calloc是什么?
C语言中的calloc()是用于分配具有相同大小的多个内存块的函数。它是一种动态内存分配功能,可将内存空间分配给复杂的数据结构(例如数组和结构),并返回指向内存的空指针。Calloc代表连续分配。
Malloc函数用于分配单个存储空间块,而C语言中的calloc函数用于分配多个存储空间块。C语言编程中calloc分配的每个块的大小相同。
calloc()语法:
ptr = (cast_type *) calloc (n, size);
上面的C语言中的calloc语句示例用于分配n个相同大小的内存块。
分配内存空间后,所有字节都初始化为零。
返回当前位于分配的存储空间的第一个字节的指针。
每当分配内存空间的错误(例如内存不足)时,都会返回空指针,如下面的calloc示例所示。
如何使用calloc
下面的C语言中的calloc程序计算算术序列的总和。
#include <stdio.h>
int main() {
int i, * ptr, sum = 0;
ptr = calloc(10, sizeof(int));
if (ptr == NULL) {
printf("Error! memory not allocated.");
exit(0);
}
printf("Building and calculating the sequence sum of the first 10 terms n ");
for (i = 0; i < 10; ++i) { * (ptr + i) = i;
sum += * (ptr + i);
}
printf("Sum = %d", sum);
free(ptr);
return 0;
}
C语言示例中的calloc的结果:
Building and calculating the sequence sum of the first 10 terms
Sum = 45
作者介绍