Chinaunix

标题: 一个很基础的关于‘位逻辑或’的问题 [打印本页]

作者: sicecool    时间: 2007-12-20 23:10
标题: 一个很基础的关于‘位逻辑或’的问题
int x=0;
        x=(0600|0512);
        int y=0;
        y=(600|512);
        int z=0;
        z=(0512|600);
        int a=0;
        a=(600|0512);
        int b=0;
        b=(0600|512);
        int c=0;
        c=(512|0600);
        printf("%d %d %d %d %d %d",x,y,z,a,b,c);

结果:458 600 858 858 896 896

为什么?困惑。。。。。。
作者: xi2008wang    时间: 2007-12-20 23:21
0600是八进制的
作者: xi2008wang    时间: 2007-12-20 23:23
X:
0110000000
0101001010

0111001010
0712--->458
其它自己算
作者: 熏红猴    时间: 2007-12-21 10:42
“位逻辑或”这个说法,又“位”又“逻辑”的,呵呵
作者: cugb_cat    时间: 2007-12-21 10:57
以0开头的数字为八进制,以0x开头的为十六进制
作者: sicecool    时间: 2007-12-21 12:11
原来如此。。。

多谢各位!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2