数据结构中线性表的问题,请大家看看!
大家好!初次在论坛上求助,希望得到大家的帮助!
我最近在学习数据结构,下面是关于线形表的程序。
在初始化线性表函数中,函数写成void InitList(SqList *&L)就正确,
如果函数写成void InitList(SqList *L);就错误
请问大家void InitList(SqList *L);与void InitList(SqList *&L);有什么区别?
在这位什么不能写成void InitList(SqList *L);?
谢谢!
#define MaxSize 50
typedef char ElemType;
typedef struct
{
ElemType elem[MaxSize];
int length;
}SqList;
void InitList(SqList *&L);//初始化线性表
int ListInsert(SqList *L,int i,ElemType e);
void DispList(SqList *L);
void main()
{
SqList *L;
ElemType e;
printf("初始化顺序表L\n");
InitList(L);
}
void InitList(SqList* &L)
{
L=(SqList *)malloc(sizeof(SqList));
L->length=0;
}