kx-000002-顺序表-初始化()-其他
kx-000002-顺序表-初始化()
- 顺序表头结点定义请参考:https://www.cnblogs.com/kxwslmsps/p/16937235.html
- 顺序表的初始化函数
/**
* @brief 功能:初始化顺序表 \n
* @param[in] plist:表结构指针
* @param[in] capacity:指定初始表容量
* @return status:返回初始化顺序表是否成功的结果状态标志
* @retval – OK(1):操作成功
* @retval – ERROR(-1):表结构不存在,不可操作
* @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(etype) * plist->capacity;
plist->pbase = (etype*)malloc(csize);
if (plist->pbase == NULL)
{
return OVERFLOW; //< 分配空间失败 } return OK; }
/**
* @brief 功能:初始化顺序表 \n
* @param[in] plist:表结构指针
* @param[in] capacity:指定初始表容量
* @return status:返回初始化顺序表是否成功的结果状态标志
* @retval - OK(1):操作成功
* @retval - ERROR(-1):表结构不存在,不可操作
* @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(etype) * plist->capacity;
plist->pbase = (etype*)malloc(csize);
if (plist->pbase == NULL)
{
return OVERFLOW; //< 分配空间失败
}
return OK;
}
- 顺序表头结点定义请参考:https://www.cnblogs.com/kxwslmsps/p/16937235.html
- 顺序表的初始化函数
/**
* @brief 功能:初始化顺序表 \n
* @param[in] plist:表结构指针
* @param[in] capacity:指定初始表容量
* @return status:返回初始化顺序表是否成功的结果状态标志
* @retval – OK(1):操作成功
* @retval – ERROR(-1):表结构不存在,不可操作
* @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(etype) * plist->capacity;
plist->pbase = (etype*)malloc(csize);
if (plist->pbase == NULL)
{
return OVERFLOW; //< 分配空间失败 } return OK; }
/**
* @brief 功能:初始化顺序表 \n
* @param[in] plist:表结构指针
* @param[in] capacity:指定初始表容量
* @return status:返回初始化顺序表是否成功的结果状态标志
* @retval - OK(1):操作成功
* @retval - ERROR(-1):表结构不存在,不可操作
* @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(etype) * plist->capacity;
plist->pbase = (etype*)malloc(csize);
if (plist->pbase == NULL)
{
return OVERFLOW; //< 分配空间失败
}
return OK;
}