不知道是不是编译器的问题?
不知道是怎么回事?command_code = 0x141a0714的时候,居然执行265行的程序,理论上应该跳过去的。
非常奇怪,不知道是怎么搞的,
cosmic是8KB的评估版。uint32_t command_code 。
RE:不知道是不是编译器的问题?
可以一步一步进行调试观察,看观察到的command_code值是否是实时更新的RE:不知道是不是编译器的问题?
楼主这代码是有问题的,如果command_code = 0x141a0714;
command_code & 0x141a0200 = 0x1d1a0200;
也就是说,会掉到你第一个if语句里面去,到不了下面那个if语句里面,楼主改改代码吧。
RE:不知道是不是编译器的问题?
楼上正解。;PRE:不知道是不是编译器的问题?
是我错了,改为 if(0X141A0100 ==(command_code&0XFFFFFF00))判断就可以了。多谢3楼提醒,我真是太粗心了!回复:不知道是不是编译器的问题?
回复第 3 楼 于2014-04-17 07:50:14发表:楼主这代码是有问题的,
如果command_code = 0x141a0714;
command_code & 0x141a0200 = 0x1d1a0200;
也就是说,会掉到你第一个if语句里面去,到不了下面那个if语句里面,楼主改改代码吧。
详细!!霸气!!:lol
RE:不知道是不是编译器的问题?
编译器一般不会出问题.:)RE:不知道是不是编译器的问题?
三楼很仔细。细心 :DRE:不知道是不是编译器的问题?
哥们,你那是位与运算, 就应该进入第一个分支,建议自己用笔来算算。RE:不知道是不是编译器的问题?
这个编译器没有用过,呵呵回复:不知道是不是编译器的问题?
回复第 3 楼 于2014-04-17 07:50:14发表:楼主这代码是有问题的,
如果command_code = 0x141a0714;
command_code & 0x141a0200 = 0x1d1a0200;
也就是说,会掉到你第一个if语句里面去,到不了下面那个if语句里面,楼主改改代码吧。
如果command_code = 0x141a0714;
command_code & 0x141a0200 = 0x141a0714; 吧,不是0x1d1a0200
页:
[1]