AdolfHitler 发表于 2013-5-29 21:56:10

问个弱弱的新手问题

为什么这样就可以进判断
if( ( rGPFDAT & ( 1 << 1 ) )==0 )
{
      keynum = 1;
}

而这样就不行呢
if( rGPFDAT & ( 1 << 1 )==0 )
{
      keynum = 1;
}

多一对括号究竟起了什么作用呢?

wbz073 发表于 2013-5-29 22:37:52

建议你去看看C语言中优先级的部分

夏雨 发表于 2013-5-30 08:42:18

0==的优先级高于&。正常的是取rGPFDAT的1位判断是否为0。少加 括号,变成rGPFGAT和(1<<1)==0与。而且(1<<1)==0貌似语法错误吧。

liu873397317 发表于 2013-7-16 14:00:33

没什么作用,那只是为了,便于查找错误,便于修改
页: [1]
查看完整版本: 问个弱弱的新手问题