按位或运算符

丹丁·卡卡

我有以下一段代码:

int ret() {
    int x = 010;
    int y = 4;
    int z = x | y;
    return z;
}

当 x = 010 时,此函数返回 12。但是,将 x 更改为 10 时,将返回 14。为什么会这样?

拔示巴

OR 运算符是一个红鲱鱼:问题出在别处。

010由于前导.八进制文字0在十进制中,这是8

十进制x8也是如此并且8 | 412

10是十进制文字。并且10 | 414

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章