C++操作符(&按位与操作符和==等于比较操作符)的优先级问题导致的bug

在一个socket通讯程序中,将socket接收到的字节和0x20比较:

中医浮针疗法视频教程全套腕踝针符仲华浮针讲座与操作视频原理
| 月销量19件
优惠价7.9元
原价¥7.9

淘口令:

¥6pr9XKwzNz3¥
 

if (buf[0]&0x20 == 0x20)

结果得不到预期效果。

后来发现,上面一行代码执行是按照buf[0]和0x20 == 0x20进行按位与操作,这才发现是操作符优先级问题导致的。

相关文章:C++操作符的优先级及其记忆方法

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0
分享
评论 抢沙发
CPPKU的头像-cppku-C++库

昵称

取消
昵称表情代码图片