首页 > 代码库 > 数据结构中构建顺序表
数据结构中构建顺序表
顺序表指的是数据元素在内存中连续分配地址的数组,由于指针无法指出数组长度,编译时不会报错,所有用结构体来表示一个顺序表:
顺序表用C语言的表示方法如下:
<span style="font-family: Arial, Helvetica, sans-serif;"> #define OK 1</span>
#define ERROR -1 typedef int elem_type;
typedef int Statue; // int Arrylength; typedef struct sqlist { elem_type *Arry; int Arrylength; } Sqlist; //建立一个空表 Statue Create_Sqlist(Sqlist *&S) { //S->Arry = (elem_type *) malloc(MaxSize*sizeof(elem_type)); //L = (sqlist *)malloc(sizeof(sqlist)); // L->data = http://www.mamicode.com/(char *)malloc(maxsize);> 显示结果如下:
分析比较下面代码段的差别:
A段——建立空表没有bug的代码:
typedef struct sqlist { elem_type *Arry; int Arrylength; } Sqlist; //建立一个空表 Statue Create_Sqlist(Sqlist *&S) { S = (Sqlist *)malloc(sizeof(Sqlist)); S->Arry = (elem_type *)malloc(MaxSize); }B段——建立空表出现bug的代码:typedef struct sqlist { elem_type Arry[MaxSize]; int Arrylength; } Sqlist; //建立一个空表 Statue Create_Sqlist(Sqlist *S) { S->Arry = (elem_type *) malloc(MaxSize*sizeof(elem_type)); }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。