你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
FreeRTOS源代码分析unsigned portBASE_TYPE uxListRemove( xListItem * cons...
[复制链接]
阿松松
发布时间:2015-1-12 17:48
文章
文章封面:
-
文章简介:
-
在list.c中,
把删除任意一个结点。
unsigned portBASE_TYPE uxListRemove( xListItem * const pxItemToRemove )
{
xList * pxList;
/*你要删除这个结点,那你总不能直接删吧,怎么也得和你上下的哥们交接好工作吧,可不能拍屁股走人,
要告诉你下面的那个哥们,我走了,以后你的你的上线就得是我现在的上线。*/
pxItemToRemove->pxNext->pxPrevious = pxItemToRemove->pxPrevious;
/*要告诉你上面的那个哥们,我走了,以后你的你的下线就得是我现在的下线。*/
pxItemToRemove->pxPrevious->pxNext = pxItemToRemove->pxNext;
/* 搞清楚要删除的结点现在在哪个链表中。*/
pxList = ( xList * ) pxItemToRemove->pvContainer;
/* 如果当前的pxIndex指向要删除的结点的话,要找人的话,只好请他找我(pxPrevious)的上线了。 */
if( pxList->pxIndex == pxItemToRemove )
{
pxList->pxIndex = pxItemToRemove->pxPrevious;
}
/*意思是,哥不干了,我现在自由了,谁也管不着了,当然,之前所属的组织中的结点数量就少了一个。*/
pxItemToRemove->pvContainer = NULL;
( pxList->uxNumberOfItems )--;
/*告诉调用者此链表中还剩多少可用的结点。*/
return pxList->uxNumberOfItems;
}
复制代码
Enjoy,欢迎拍砖。
赞
0
收藏
0
评论
0
分享
发布时间:2015-1-12 17:48
举报
请先
登录
后回复
0个回答
所属标签
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表