c#中goto跳过的还会执行吗
发布网友
发布时间:2022-05-07 14:31
我来回答
共5个回答
热心网友
时间:2022-06-30 07:58
不止可以向后goto,也可以向前goto形成循环,比如:
int i=0;
mylabel
i++;
goto mylabel
或者跳出多重循环,因为break只能跳出一重,所以需要goto跳出多重
while(...){
while(...){
if(...) goto mylabel;
}
}
mylabel;
另外一点非常重要的是,在所有书中都会讲goto语句,但是都强调不推荐使用。因为使用goto会造成逻辑上的乱跳,导致不安全的引用之类的。貌似在debug的时候也会出现一些问题。goto完全可以被for(foreach),while,if代替,反正我自己写了这么多代码不记得自己用过goto。
热心网友
时间:2022-06-30 07:58
跳过就不会执行了。
一般是在多重循环中用 goto 提前终止退出的。
for (int i=0; i<100; i++)
for (int j=0; j<100; j++)
{
if ... goto exit;
}
exit:
热心网友
时间:2022-06-30 07:59
会执行
可以向前goto形成循环,比如:
int i=0;
mylabel
i++;
goto mylabel
或者跳出多重循环,因为break只能跳出一重,所以需要goto跳出多重
while(...){
while(...){
if(...) goto mylabel;
}
}
热心网友
时间:2022-06-30 07:59
goto以前是作为循环来用的。就是说:
int a=1;
mylable;
a+=1;
if a==9 goto maylable:
a=1;
相当于while循环或者for循环之类的,但是,其最初的目的不是用来干这个的,而是在不同循环之间跳转或者是循环和外界之间跳转,因为光用for ,while来控制得而话有时候会显得麻烦。在这里一时半会举不出什么好的例子。不过这个用的不多,而且not recommended
热心网友
时间:2022-06-30 08:00
不会了,就是为了不执行才使用goto跳过