OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5797|回复: 6

为什么单片机例程中很多代码对一些状态或者位的判断时都用!=Reset,而不直接用==Set呢?

[复制链接]

17

主题

102

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
332
金钱
332
注册时间
2021-1-19
在线时间
56 小时
发表于 2021-7-3 22:40:49 | 显示全部楼层 |阅读模式
1金钱
为什么单片机例程中很多代码对一些状态或者位的判断时都用(......!=Reset),而不直接用(......==Set)呢?
更快?习惯?还是什么原因?

最佳答案

查看完整内容[请看2#楼]

对于位的判断是一样的。但是有很多字节或者整形,一般set会定义为1,reset定义为0,会有遇到2或者其他非0并且非1的值,那么!=Reset就很可靠了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8017
金钱
8017
注册时间
2014-8-13
在线时间
1594 小时
发表于 2021-7-3 22:40:50 | 显示全部楼层
对于位的判断是一样的。但是有很多字节或者整形,一般set会定义为1,reset定义为0,会有遇到2或者其他非0并且非1的值,那么!=Reset就很可靠了。
回复

使用道具 举报

6

主题

890

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1481
金钱
1481
注册时间
2020-8-19
在线时间
336 小时
发表于 2021-7-5 11:18:26 | 显示全部楼层
都可以,自己喜欢
回复

使用道具 举报

30

主题

184

帖子

0

精华

高级会员

Rank: 4

积分
608
金钱
608
注册时间
2020-4-17
在线时间
111 小时
发表于 2021-7-5 14:08:11 | 显示全部楼层
本帖最后由 跟紧我 于 2021-7-5 14:09 编辑

== 相比于!=更容易疏忽出错,经验老到的一般更倾向于使用!=
回复

使用道具 举报

17

主题

102

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
332
金钱
332
注册时间
2021-1-19
在线时间
56 小时
 楼主| 发表于 2021-7-11 12:04:11 | 显示全部楼层
mack13013 发表于 2021-7-3 22:40
对于位的判断是一样的。但是有很多字节或者整形,一般set会定义为1,reset定义为0,会有遇到2或者其他非0并 ...

有道理,如果直接用==Set,面对2或其它非0数的话就不会判断为真了
回复

使用道具 举报

3

主题

1907

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4106
金钱
4106
注册时间
2018-8-14
在线时间
696 小时
发表于 2021-7-11 12:20:35 | 显示全部楼层
为啥要用==Set,或!=Set ?
直接用(Var) 或 (!Var) 不香? 写代码没有规定必须500字以上的要求吧?
回复

使用道具 举报

17

主题

102

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
332
金钱
332
注册时间
2021-1-19
在线时间
56 小时
 楼主| 发表于 2021-7-13 20:34:23 | 显示全部楼层
edmund1234 发表于 2021-7-11 12:20
为啥要用==Set,或!=Set ?
直接用(Var) 或 (!Var) 不香? 写代码没有规定必须500字以上的要求吧?

不好意思,本人初学者
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 00:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表