calloc函數(shù)在C語言中用于動(dòng)態(tài)分配內(nèi)存空間,并將分配的內(nèi)存空間初始化為0。其使用方式如下:
引入頭文件:#include <stdlib.h>
函數(shù)原型:void *calloc(size_t num, size_t size);
num
:要分配的元素個(gè)數(shù)size
:每個(gè)元素的大?。ㄒ宰止?jié)為單位)函數(shù)返回值:如果分配成功,則返回指向分配內(nèi)存的指針;如果分配失敗,則返回NULL。
使用示例:
#include <stdio.h>
#include <stdlib.h>
int main() {
int num = 5;
int *ptr;
// 分配一個(gè)元素大小為int的數(shù)組,長度為num,初始化為0
ptr = (int *) calloc(num, sizeof(int));
if(ptr == NULL) {
printf("內(nèi)存分配失敗\n");
return 1;
}
printf("分配的數(shù)組元素為:");
for(int i = 0; i < num; i++) {
printf("%d ", ptr[i]);
}
printf("\n");
// 釋放內(nèi)存
free(ptr);
return 0;
}
以上示例中,通過calloc
函數(shù)分配了一個(gè)由5個(gè)int元素組成的數(shù)組,并將其初始化為0。然后通過循環(huán)打印出數(shù)組中的元素,并使用free
函數(shù)釋放了分配的內(nèi)存空間。