我有以下代码:
int ret() {
int x = 010;
int y = 4;
int z = x | y;
return z;
}
Run Code Online (Sandbox Code Playgroud)
当x = 010时,此函数返回12.但是,在将x更改为10时,将返回14.为什么会这样?
OR运算符是一个红鲱鱼:问题出在其他地方.
010由于领先,是八进制文字0.在十进制中,这是8.
十进制x值8也是如此.而8 | 4为12.
10是十进制文字.而10 | 4为14.
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |