问一个ucos中OSTCBList 的简单问题? 10
在OS_TCBInit函数中有如下语句:if(OSTCBList!=(OS_TCB*)0){OSTCBList->OSTCBPrev=ptcb;}OSTCBList!=(...
在OS_TCBInit函数中有如下语句:
if (OSTCBList != (OS_TCB *)0) {
OSTCBList->OSTCBPrev = ptcb; }
OSTCBList != (OS_TCB *)0这一个条件是否在第一次调用OS_TCBInit函数时是不成立的?也就是说OSTCBList 在开始时一直都是为空指针。不能执行OSTCBList->OSTCBPrev = ptcb这一条语句,但是什么时候它才不为空呢?谢谢了! 展开
if (OSTCBList != (OS_TCB *)0) {
OSTCBList->OSTCBPrev = ptcb; }
OSTCBList != (OS_TCB *)0这一个条件是否在第一次调用OS_TCBInit函数时是不成立的?也就是说OSTCBList 在开始时一直都是为空指针。不能执行OSTCBList->OSTCBPrev = ptcb这一条语句,但是什么时候它才不为空呢?谢谢了! 展开
2个回答
2012-10-09
展开全部
我附带问一个跟这个问题密切相关的地方:
ptcb->OSTCBNext = OSTCBList;
ptcb->OSTCBPrev = (OS_TCB *)0;
if (OSTCBList != (OS_TCB *)0) {
OSTCBList->OSTCBPrev = ptcb;
}
OSTCBList = ptcb; // 下面既然有这句,那么上面的If()中不管怎么修改OSTCBList的成员应该都没用啊,求高手解释一下?谢谢
ptcb->OSTCBNext = OSTCBList;
ptcb->OSTCBPrev = (OS_TCB *)0;
if (OSTCBList != (OS_TCB *)0) {
OSTCBList->OSTCBPrev = ptcb;
}
OSTCBList = ptcb; // 下面既然有这句,那么上面的If()中不管怎么修改OSTCBList的成员应该都没用啊,求高手解释一下?谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询