C++右移操作

">>" 向右位移运算符,是一种双目位运算符。
 
1. 什么是位呢?
就是bit
 
2. 什么是双目呢?
就是有两个操作数
 
3. 那么会有什么效果呢?
假设
unsigned char a = 5;  // 那么实际上它在 内存里面 表示为 0x05 --> bit: 0000 0101
如果有
unsigned char b = a>>1;  
// 那么有下面的情况:  
a:[0000 0101]        // b=a>>1
b:[0000 0010]1
我们发现这里面出现了数据的损失,如果没有损失的情况下,会有什么样的效果呢?
是的,相当于除以2。

posted @ 2010-04-11 17:54  秋天的风  阅读(6208)  评论(0)    收藏  举报