我們知道,C語言中的數(shù)組大小是固定的,定義的時候必須要給一個常量值,不能是變量。
這帶來了很大的不便,如果數(shù)組過小,不能容下所有數(shù)組,如果過大,浪費資源。
請實現(xiàn)一個簡單的動態(tài)數(shù)組,能夠隨時改變大小,不會溢出,也不會浪費內(nèi)存空間。
下面的代碼實現(xiàn)了簡單的動態(tài)數(shù)組:
#include <stdio.h>#include <stdlib.h>int main(){ //從控制臺獲取初始數(shù)組大小 int N; int *a; int i; printf("Input array length:"); scanf("%d",&N); //分配空間 a=(int *)calloc(N,sizeof(int)); //填充數(shù)據(jù) for(i=0;i<N;i++){ a[i]=i+1; printf("%-5d",a[i]); if((i+1)%10==0){ printf("/n"); } } //釋放內(nèi)存 free(a); a=NULL; printf("/n"); return 0;}運行結(jié)果:
Input array length:201 2 3 4 5 6 7 8 9 1011 12 13 14 15 16 17 18 19 20
新聞熱點
疑難解答
圖片精選