类似说明例程

2019-07-17 13:15发布

看到一个例程里面的关于if语句的,

if(wdANTtimer) wdANTtimer--;
if(ucLEDSineTmr) ucLEDSineTmr--;
if(ucSensrTimer) ucSensrTimer--;
if(wdNodeTmr) wdNodeTmr--;

按照我知道的常理,如if(wdNodeTmr) wdNodeTmr--;是不是等同于
if(wdNodeTmr>0) wdNodeTmr--还是其他的,请教高手这一块关于if语句的更多问题,大侠们看到后,给类似说明例程的越详细越好啊,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
yszong
1楼-- · 2019-07-17 18:29
if(),括号里其实是只有1或0的,即是真或假!对一个不为0的变量,都是真!如果变量时负数也是真!我是这样理解的!
huangchui
2楼-- · 2019-07-17 19:04
 精彩回答 2  元偷偷看……
jiajs
3楼-- · 2019-07-17 22:57
if可以单独使用,比如if(a<b) a++;if(a>b)b++;但是涉及到多个条件时,else 可以配合if使用,比如if(a<b)a++;else b++;   说穿了   if是一个条件判断语句   如果为真执行一个动作   为假执行另一个动作   就这么简答
jiahy
4楼-- · 2019-07-18 01:05

相当于定义一个变量,while(--),用法不同,看看仿真时汇编怎么说的,用了什么指令,哪个效率高吧
wyjie
5楼-- · 2019-07-18 06:52

IF语句的条件只有True or False,即1或者0,很多人就会迷惑在这里,其实这里的条件判断的结果是指非零就是1。条件真就执行后面的IF语句,否则,就跳过IF语句。
liliang9554
6楼-- · 2019-07-18 06:57

如果一开始wdNodeTmr 大于0。则一直减为0.之后退出。。
如果一开始wdNodeTmr 小于0。则不执行自减的过程,直接退出。。

一周热门 更多>