#include<stdio.h>
#include <stdlib.h>
#include <cstdlib>
#define InitSize 10 //定义初始
typedef struct{
int *data; //指示动态分配数组的指针
int Maxsize;//顺序表的最大容量
int length; //顺序表的当前长度
}SqLight;//顺序表的类型定义
void InitList(SqLight &L){
//用malloc函数申请一片连续的存储空间
L.data = (int *)malloc(InitSize*sizeof (int));
L.length = 0;
L.Maxsize = InitSize;
}
void IncreaseSize(SqLight &L, int len){
int *p = L.data;
L.data = (int *)malloc((L.Maxsize+len)*sizeof(int));
for(int i = 0;i<L.length;i++){
L.data[i] = p[i];
}
L.Maxsize = L.Maxsize + len;
}
int main(){
SqLight(L); //声明一个顺序表
InitList(L);//初始化顺序表
IncreaseSize(L,5);
return 0;
}
顺序表的定义——动态存储