日期:2014-05-19  浏览次数:20828 次

初学者请教switch的用法,为什么提示出错,谢谢回答帮助我.
using   System;

public   class   A
{
public   static   void   Main()
{
      int   i=3;
      switch(i)
{
      case   1:Console.WriteLine( "1吗? ");break;
      case   2:Console.WriteLine( "2吗? ");goto   case   2;break;//书上说可以这么用的,我用了怎么不行啊/请大家指教一下.
      case   3:Console.WriteLine( "3吗? ");break;
      default:Console.WriteLine( "no吗? ");break;

        }
}
}


------解决方案--------------------
default就不用break了吧
goto后面好像也可以不用break
------解决方案--------------------
运行没有错误,也就是说没有语法错误,编译会报 "检测到无法访问的代码 "

因为实际上如果i=2的话,goto case 2;会继续跳到case 2这里执行,break;这条语句是永远不会执行到的
------解决方案--------------------
你这样不就是死循环,不停的在case:2那里跳
不是goto语句,不到不得已,不要用吗?这句话书上也应该有吧