写程序,用到位判别,开端时分,我是这么写的
if (a& 0x02) == 1)
{
}
else
{
}
a的第二位假如为1,则履行if中的程序,不然履行else中的程序
但编译完今后,工作的开展却严酷的背离了我的初衷。
成果改成以下句子后,工作才得到了停息。
if ((a>> 1& 0x01)== 1)
{
}
else
{
}
先把位移1位,然后在和“1与操作”,这个时分,就可以得到想要的成果了
原因可能是因为c言语的语法形成的,但详细的原因因为没有看书,也不知道,写这个的意图是给相同困惑的小盆友们一个提示,在遇到这样的状况,试试以下的办法。