LiteOS 链表操作

一 链表初始化

LOS_DL_LIST *head;  /* 定义一个双向链表的头节点 */

head = (LOS_DL_LIST *)LOS_MemAlloc(m_aucSysMem0, sizeof(LOS_DL_LIST));/* 动态申请头结点的内存 */
LOS_ListInit(head);  /* 初始化双向链表 */

if (!LOS_ListEmpty(head))  /* 判断是否初始化成功 */
{
    printf("双向链表初始化失败!\n\n");
} else{
    printf("双向链表初始化成功!\n\n");
}

二 向链表添加节点

LOS_DL_LIST *node1 =(LOS_DL_LIST *)LOS_MemAlloc(m_aucSysMem0, sizeof(LOS_DL_LIST)); /*动态申请结点的内存*/
LOS_DL_LIST *node2 = (LOS_DL_LIST *)LOS_MemAlloc(m_aucSysMem0, sizeof(LOS_DL_LIST));/*动态申请结点的内存*/

LOS_ListAdd(head,node1); /* 添加第一个节点,连接在头结点上 */
LOS_ListAdd(node1,node2); /* 添加第二个节点,连接在一个节点上 */

三 将尾节点插入双向链表末尾

LOS_ListTailInsert(head, tail); /*  将尾节点插入双向链表的末尾 */

四  删除节点

LOS_ListDelete(node1); /* 删除第一个节点 */
LOS_MemFree(m_aucSysMem0, node1); /* 释放第一个节点的内存, */

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值