1 Array array_create(int int_size);//创建数组
2 void array_free(Array *a);//回收数组
3 int array_size(const Array *a);//告诉我们数组中有多少个单元可以用
4 int* array_at(Array *a,int index);//访问数组某个单元
5 void array_inflate(Array *a,int more_size);//让数组长大
//创建数组
1 Array array_create(int init_size)
2 {
3 Array a;
4 a.array=(int*)malloc(sizeof(int)*init_size);
5 a.size=init_size;
6 return a;
7 }
1 //回收数组
2 void array_free(Array *a)
3 {
4 free(a->array);
5 a->array=NULL;
6 a->size=0;
7 }
1 //封装
2 int array_size(const Array *a)
3 {
4 return a->size;
5 }
1 int* array_at(Array *a,int index)
2 {
3 return &(a->arra[index]);
4 }
1 void array_inflate(Array *a,int more_size)
2 {
3 int *p=(int*)malloc(sizeof(int)(a->size+more_size));
4 int i;
5 for(i=0;i<a->size;i++){
6 p[i]=a->array[i];
7 }
8 free(a->array);
9 a->array=p;
10 a->size+=more_size;
11 }