Microchip
直播中

刘德凤

7年用户 186经验值
私信 关注
[问答]

XC8按位倒转后比较失败该怎么办?

我从XC8观察到非常奇怪的行为。基本上,比较(VAR1==VAR2)的行为不正确。下面是一些测试用例。我在调试器上观察到了每个结果的注释。我预料下面的结果都是真的。我在Linux上运行XC8 1 37和MPLLABXIDE3.26,并编写PIC16LF18325。我试着更换照片,但没有改变。我也试着改变数值,也试着将“无符号字符”改为“字符”,但是问题仍然存在。----EDIT---谢谢你的快速响应,伙计们!这个问题确实是整数推广,阿贾罗索夫和达里奥说。如果其他人遇到这篇文章,解决方案是将逐位反转的结果转换为char,像这样:Jaroslaw链接的视频解释说,没有办法阻止C进行整数提升;这是由所有C数学和二进制运算符隐式完成的。我只需要在事实之后再回到我想要的炭上。

回帖(1)

张强

2019-10-10 07:05:26
http://www. com?DDONNEX=En55854
举报

更多回帖

发帖
×
20
完善资料,
赚取积分