- 顺序表结构定义:
-
typedef int seqType; // 定义顺序表数据类型 // 定义顺序表的结构体 typedef struct t_sList { seqType* pbase; // 表基址 int capacity; // 表容量 int size; // 表长度 }mySList;
- 顺序表初始化
-
/** * @brief 功能:初始化顺序表 \n * @param[in] plist:表结构指针 * @param[in] capacity:指定初始表容量,若指定值小于1,则令初始容量为CAPACITY * @retval OK(1):初始化成功 * @retval ERROR(0):表结构不存在,不可操作 * @retval OVERFLOW(-2):初始化失败:分配堆空间失败导致的 */ status sList_init(mySList* plist, int capacity) { if (plist == NULL) { return ERROR; } if (capacity < 1) { capacity = CAPACITY; } plist->capacity = capacity; //< 分配初始容量 plist->size = 0; int csize = sizeof(seqType) * plist->capacity; plist->pbase = (seqType*)malloc(csize); if (plist->pbase == NULL) { return OVERFLOW; //< 分配空间失败 } return OK; }