一、初始化顺序表
代码
/// @mybrief 初始化单链表
/// @param plist:链表结构指针
/// @return status:返回初始化结果
/// @retval ERROR(0):链表不存在,不可操作
/// @retval ERR_OVERFLOW(-2):创建头结点失败,初始化失败
/// @retval OK(1):初始化成功
/// @attention 内部实现函数的开参是二指指针
status xxx_init(myLinkList* plist)
{
if (plist == NULL)
{
return ERROR;
}
return xxx_init_(&plist->phead);
}
status xxx_init_(myLNode** phead)
{
/// 创建头结点
myLNode* p = (myLNode*)malloc(sizeof(myLNode));
if (p == NULL)
{
return ERR_OVERFLOW;
}
memset(p, 0, sizeof(p));
p->pnext = NULL;
*phead = p;
return OK;
}