早教吧 育儿知识 作业答案 考试题库 百科 知识分享

uc/os-ii的OSTimeTick()函数中使各任务控制块中的OSTCBDly减1的代码是哪条?对OSTCBDly操作只看到这一条"if(--ptcb->OSTCBDly==0)",这也只是在if条件里面自减啊,难道自减后的值会保存到ptcb->OSTCBDly里

题目详情
uc/os-ii的OSTimeTick()函数中使各任务控制块中的OSTCBDly减1的代码是哪条?
对OSTCBDly操作只看到这一条"if (--ptcb->OSTCBDly == 0)",这也只是在if条件里面自减啊,难道自减后的值会保存到ptcb->OSTCBDly 里面?想不明白,请高手指教
▼优质解答
答案和解析
--和->都为单目运算,C语言中虽然--和->优先级相同,但是单目运算运算是从右到左,故"--ptcb->OSTCBDly == 0“等价于"--(ptcb->OSTCBDly)".所以先运算ptcb->OSTCBDly(即取ptcb指向的任务控制块的OSTCBDly值),再进行--(ptcb->OSTCBDly)运算(即将即取ptcb指向的任务控制块的OSTCBDly的值减1).因为并没有创建ptcb->OSTCBDly的副本,所以ptcb指向的任务控制块的OSTCBDly减1后的值肯定会保存在ptcb指向的任务控制块中.
看了uc/os-ii的OSTime...的网友还看了以下:

有三个盒子,甲盒装了两个1克的砝码,乙盒装了两个2克的砝码,丙盒装了一个1克、一个2克的砝码.每只  2020-06-16 …

一道初中数学题甲乙丙三人在公路上目睹了一次车祸,但是谁也没有完整地记住肇事者车的车牌号码.甲只记住  2020-07-05 …

小刚用天平测量一铁块质量,她先把游码拨到标尺的正中央对着0.5g刻度上,然后旋动衡量右端的螺母,使  2020-07-07 …

有5个砝码,其中重1克的砝码1个,重3克的砝码2个,重5克的砝码2个.如果规定砝码只能放在天平的同  2020-07-08 …

英语翻译问一个关于数据库原理及应用的题,在一个关系模式中A可有多个主码B可有多个码C只能有一个码D  2020-07-10 …

如图所示,在杠杆的a处悬挂两个相同的钩码,若使杠杆在水平位置平衡,可以采取的措施是()A.只能在a  2020-07-11 …

在银行ATM机取钱时需要输入银行卡密码后才能进行下一步操作,密码是000000到999999中某一个  2020-11-06 …

20个饮料瓶盖中,有4个红色的,5个黄色的,其余为白色的.现知其中只有一个有中奖号码,从中随意取一个  2020-11-22 …

某码头只能容纳一只船,预知某日24h内有甲乙两船到达,如果停靠的时间...某码头只能容纳一只船,预知  2020-11-27 …

家里的电话号码,我只记得前两位号码是63,后面的六位号码忘了,后面六位号码由六个数组成(没有0),其  2020-12-27 …