- 链接地址:https://blog.csdn.net/smstong/article/details/53780445
- 链接标题:一个C语言运算符优先级导致的问题_c语言运算优先级-CSDN博客
- 所属网站:blog.csdn.net
- 被收藏次数:7447
检测某个数的某个二进制位是否为0,是常见的控制逻辑,如下代码所示:if (x & (1<<2) == 0) { printf("x的第2个二进制位为0\n");}然而实际上,上述代码永远不会执行printf,也就是说 x & (1<<2) == 0这个表达式始终为0。原因在于在C语言里,==运算符的优先级高于&,导致上面的表达式相当于:if ( x & ((1<<2) == 0) )因为1_c语言运算优先级
版权声明:本文发布于特牛网址导航 内容均来源于互联网 如有侵权联系删除
标签:c语言运算优先级