c#中goto的用法(前辈,请讲解的详细点,谢谢)
2013-11-27
展开全部
goto语句是c#和java的区别之一c#建设性地继承了c++的goto语句而没有删掉,是因为我们不能一棒子把goto打死,只看到它不好的一面,而没有看到它的优点。1.goto可以做直接跳转,直接跳转在c#已经不多见了例如语句1...nbsp;gotonbsp;标签1;语句2...nbsp;标签2:语句3...此时语句2不会执行到2.用在switch中。c#不再支持switch的跨标签,例如switch(x){nbsp;nbsp;casenbsp;1:nbsp;nbsp;nbsp;nbsp;nbsp;语句1;nbsp;nbsp;casenbsp;2:nbsp;nbsp;nbsp;nbsp;nbsp;语句2;nbsp;nbsp;nbsp;nbsp;nbsp;break;nbsp;nbsp;default:nbsp;nbsp;nbsp;nbsp;nbsp;break;}是不允许的,casenbsp;1不能直接跳到casenbsp;2前面,要改成switch(x){nbsp;nbsp;casenbsp;1:nbsp;nbsp;nbsp;nbsp;nbsp;语句1;nbsp;nbsp;nbsp;nbsp;nbsp;gotonbsp;casenbsp;2;nbsp;nbsp;nbsp;nbsp;nbsp;break;nbsp;nbsp;casenbsp;2:nbsp;nbsp;nbsp;nbsp;nbsp;语句2;nbsp;nbsp;nbsp;nbsp;nbsp;break;nbsp;nbsp;default:nbsp;nbsp;nbsp;nbsp;nbsp;break;}3.直接跳出多重for循环,这是goto好用的地方之一。例如多个for循环嵌套,可以用for语句一下子全部跳出:for(intnbsp;x=0;xamp;lt;100;x++){nbsp;nbsp;for(intnbsp;y=0;yamp;lt;100;y++)nbsp;nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;语句...;nbsp;nbsp;nbsp;nbsp;nbsp;gotonbsp;outfor;nbsp;nbsp;}}outfor:nbsp;语句...而不需要使用break一个一个for跳出
2013-11-27
展开全部
goto语句是直接跳转的,但是在。net这方面 强烈的不建议使用GOTO,因为GoTo语句会导致你的代码非常的混乱,可读性也非常的差,能用Goto语句的我们都可以别的方式来代替,也许一些初学者会觉得Goto语句很方便,但是忠心提醒,不要用,我所见过的唯一的一个地方用的GOTO语句就是电信核心网中他们为了提高效率而在汇编语言中用了GOTO,其他至今没有见过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
goto语句是c#和java的区别之一
c#建设性地继承了c++的goto语句而没有删掉,是因为我们不能一棒子把goto打死,只看到它不好的一面,而没有看到它的优点。
1.goto可以做直接跳转,直接跳转在c#已经不多见了
例如
语句1...
goto 标签1;
语句2...
标签2:
语句3...
此时语句2不会执行到
2.用在switch中。c#不再支持switch的跨标签,例如
switch(x)
{
case 1:
语句1;
case 2:
语句2;
break;
default:
break;
}
是不允许的,case 1不能直接跳到case 2前面,要改成
switch(x)
{
case 1:
语句1;
goto case 2;
break;
case 2:
语句2;
break;
default:
break;
}
3.直接跳出多重for循环,这是goto好用的地方之一。
例如多个for循环嵌套,可以用for语句一下子全部跳出:
for(int x=0;x<100;x++)
{
for(int y=0;y<100;y++)
{
语句...;
goto outfor;
}
}
outfor:
语句...
而不需要使用break一个一个for跳出
c#建设性地继承了c++的goto语句而没有删掉,是因为我们不能一棒子把goto打死,只看到它不好的一面,而没有看到它的优点。
1.goto可以做直接跳转,直接跳转在c#已经不多见了
例如
语句1...
goto 标签1;
语句2...
标签2:
语句3...
此时语句2不会执行到
2.用在switch中。c#不再支持switch的跨标签,例如
switch(x)
{
case 1:
语句1;
case 2:
语句2;
break;
default:
break;
}
是不允许的,case 1不能直接跳到case 2前面,要改成
switch(x)
{
case 1:
语句1;
goto case 2;
break;
case 2:
语句2;
break;
default:
break;
}
3.直接跳出多重for循环,这是goto好用的地方之一。
例如多个for循环嵌套,可以用for语句一下子全部跳出:
for(int x=0;x<100;x++)
{
for(int y=0;y<100;y++)
{
语句...;
goto outfor;
}
}
outfor:
语句...
而不需要使用break一个一个for跳出
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在程序段的某一个地方设置一个标签lab(可以取其他名称),然后当条件满足的时候,使用goto lab 语句.
lab:
if()
{....;
......;
//代码段...;
.....;
}
if(..条件满足..)goto lab;
lab:
if()
{....;
......;
//代码段...;
.....;
}
if(..条件满足..)goto lab;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询