#include<stdio.h>
#include<stdlib.h>
//calloc()函數在stdlib頭文件裏面!!
main()
{
//calloc用法: void *calloc(size_t member,size_t size)
//member是指單位的數量,size是指每個單位的大小
//eg:calloc(10,4),那麼申請了10個單位,每個單位長度是4byte,總共申請了40個byte。
//接下來用calloc動態創建一個數組,並且給數組賦值。
//假設數組長度是10,因爲在64bit機子上,sizeof(int)=4,所以size=4.
int *p=(int *)calloc(10,4);
//接下來輸入數據
for(int i=0;i<10;i++)
{
scanf("%d",p+i);
}
//輸出數據
for(int i=0;i<10;i++)
{
printf("%d ",*(p+i));
}
//因爲你是在堆上申請的內存,所以記得釋放堆!!避免造成斷點!!
free(p);
/*ps:與malloc不同的是calloc要負責初始化,int數組就初始化爲0,float就是0.0等等
而malloc不負責初始化,申請空間後,對應數據是隨機數*/
return 0;
}
用calloc動態創建數組
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.