已经知道key_v 只能为0x01或0x10 则if(( key_v & 0x01)==0)和if(key_v==0x10)有什么区别?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 14:53:48

已经知道key_v 只能为0x01或0x10 则if(( key_v & 0x01)==0)和if(key_v==0x10)有什么区别?

(( key_v & 0x01)==0 这是按位与 如果出来结果不为 0 则是假不执行,如果为0 则为真 执行if里的语句.
key_v==0x10 这个 key_v 必须是0x10时才执行.
两种情况都不能实现你想要的结果.
应该这样写
if((key_v==0x01)||(key_v==0x10))