更新:2007 年 11 月
左移运算符 (<<) 将第一个操作数向左移动第二个操作数指定的位数。第二个操作数的类型必须是
备注
如果第一个操作数是
如果第一个操作数是
第一个操作数的高序位被放弃,低序空位用 0 填充。移位操作从不导致溢出。
用户定义的类型可重载 << 运算符(请参见
示例
C# | 复制代码 |
---|---|
class MainClass11 { static void Main() { int i = 1; long lg = 1; Console.WriteLine("0x{0:x}", i << 1); Console.WriteLine("0x{0:x}", i << 33); Console.WriteLine("0x{0:x}", lg << 33); } } /* Output: 0x2 0x2 0x200000000 */ |
注释
请注意,i<<1 和 i<<33 给出相同的结果,因为 1 和 33 的低序 5 个位相同。