银河

SKYIV STUDIO

  博客园 :: 首页 :: 博问 :: 闪存 :: :: :: 订阅 订阅 :: 管理 ::
    与谜题26中的程序一样,下面的程序也包含了一个记录在终止前有多少次迭代的循环。与那个程序不同的是,这个程序使用的是左移操作符(<<)。你的任务仍旧是要指出这个程序将打印什么。当你阅读这个程序时,请记住C#使用的是基于2的补码的二进制算术运算,因此-1在任何有符号的整数类型中(sbyte、short、int或long)的表示都是所有的位被置位:
    class Shifty
    {
      static void Main()
      {
        int i = 0;
        while (-1 << i != 0)
          i++;
        System.Console.WriteLine(i);
      }
    }


    C#解惑总目录
posted on 2006-09-03 17:28  银河  阅读(457)  评论(0编辑  收藏  举报