猿问
下载APP

c#中使用goto语句后,后面的语句还会执行吗?

c#中使用goto语句后,后面的语句还会执行吗


万千封印
浏览 154回答 5
5回答

呼啦一阵风

程序会跳转到goto指向的代码块执行,紧接着goto的语句就不执行了。不过,建议你忘掉goto,它会破坏程序的结构,难读也难于维护。

守候你守候我

举个例子while (true){Response.Write("a");//执行goto eee;Response.Write("b");//不执行}eee:Response.Write("c");//执行尽量不要用goto

吃鸡游戏

goto语句的用法非常灵活,你可以用它实现很多功能,但是由于goto语句的跳转影响程序的结构,在使用的时候会使人迷茫,所以一般"教材"上都不建议使用,但是用它可以实现递归,循环,选择功能,使用起来也很方便,存在即有价值,大家在使用上做适当取舍就好,觉得需要用就用,不必因拘泥而刻意不去用.goto 的意思是跳转到的意思,那么跳转到哪里呢,当然是跳转到另一个语句,如何标示这个要跳转到的语句,答案是在该语句前加上标签int i = 0;goto cc;i = 9;cc: Console.Write(i);这就是四句代码,标签的使用方式cc: Console.Write(i);即为标签名,再加上冒号":",标签名大家可以随意取,比如aa,bb,反正随大家喜欢.这四句代码的意思是,第一句:定义变量i,第二句:跳转到标签为cc的语句,接下来就输出i的结果,可以看出,第三句是无意义的,因为没有被执行,跳过去了,所以输出的值是0,而不是9.goto跳转的语句,并不是一定要跳转到之后的语句,也就是说,goto还可以跳到前面去执行我们再来看代码int i = 0;cc: Console.Write(i);goto cc;第一句代码是定义变量i,第二句是标签为cc的输出变量i的语句,第三句代码是跳转到标签为cc的语句.因为每次输出i以后,都又跳转回到cc语句,所以程序会不停地输出i.大家是不是有点明白了?没错,这就是用goto实现的循环功能.这是个不停输出0的死循环死循环对我们的作用不大,如果我们想要输出i小于10的数,那可以这样变一下代码int i = 0;cc: Console.Write(i);if (i < 9){i++;goto cc;}非常简单,只要在跳转语句加上跳转条件,也就是i<9就好了goto语句只允许在一个语句块内跳出,或者在一个语句块内的一个地方跳到另一个地方;不允许从一个语句块外面跳入一个语句块的内部

缥缈止盈

这个看你的实际代码及用途了,总的来说:主要有break、return、throw。break:一般用于循环中,如果满足某个条件就跳出循环,与之对应的还有continue,这个是满足某个条件就继续下一次循环。return:这个一般可以用在任何位置,一般在事件、方法中中止执行程序代码。如果是有返回值得方法,你得返回一个需要返回的值。throw:抛出异常。goto:就是跳转的代码要执行的地方,用得比较少。总的来说,和C语音中的理解是没有任何区别的。

慕标5265247

c#让语句不再向下执行的方法需要根据选择的项目类型来决定。如果选择的是控制台程序,那么添加一个console.writeline() ; 就可以实现暂停然后等待用户输入字符后才继续。如果是界面程序,使用方法很多,比如使用Messagebox.show(“wait“);就可以等待使用者点确定后继续。比如使用system.pause则完全暂停不执行了。
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答