0xff << 24 | 0xff << 16 | 0xff << 8 | 0xff怎么计算

偏移量什么意思?怎么计算?具体一些 谢谢

如果你说的是C、C++之类的语言的话,<<在这里是用来向左移位的,<<右边的整数用来表示要向左移多少位,这里的位是二进制的,比如16进制的0xff的二进制表示是11111111(八个1),向左移24就是这8个1的右边补24个0。以此类推0xff<<16、0xff<<8分别向左移16位和8位,0xff则不需移位。然后是|,它是按位或,即二者(或多个)之间只要有一个为1,或的结果就是1。这个式子的计算顺序是先进行<<运算,然后是|,然后再<<,以此完成,因为<<的优先级比|的高。计算结果就是1111 1111 0000 0000 0000 0000 0000 00000000 0000 1111 1111 0000 0000 0000 00000000 0000 0000 0000 1111 1111 0000 00000000 0000 0000 0000 0000 0000 1111 1111 (按位或)1111 1111 1111 1111 1111 1111 1111 1111 (结果:32个1,二进制的,你可以用windows自带的计算器算一下它的十进制)
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-17
0xff << 24 | 0xff << 16 | 0xff << 8 | 0xff = 0xffffffff这个是按字节移位,把1个字节的内容,复制到一个4字节的双字中。左移8是第二个字节,16是第三个字节,24是第4个字节。
相似回答
大家正在搜