C#基础--go to

  goto语句的用法非常灵活,你可以用它实现很多功能,但是由于goto语句的跳转影响程序的结构,在使用的时候会使人迷茫,所以一般"教材"上都不建议使用,但是用它可以实现递归,循环,选择功能,使用起来也很方便,存在即有价值,大家在使用上做适当取舍就好,觉得需要用就用,不必因拘泥而刻意不去用.

  goto 的意思是跳转到的意思,那么跳转到哪里呢,当然是跳转到另一个语句,如何标示这个要跳转到的语句,答案是在该语句前加上标签

1             int i = 0;
2             goto cc;
3             i = 9;
4         cc: Console.WriteLine(i);

  这就是四句代码,标签的使用方式cc: Console.Write(i);即为标签名,再加上冒号":",标签名大家可以随意取,比如aa,bb,反正随大家喜欢.这四句代码的意思是,第一句:定义变量i,第二句:跳转到标签为cc的语句,接下来就输出i的结果,可以看出,第三句是无意义的,因为没有被执行,跳过去了,所以输出的值是0,而不是9.

  goto跳转的语句,并不是一定要跳转到之后的语句,也就是说,goto还可以跳到前面去执行

  我们再来看代码

1   int i = 0;
2         cc: Console.WriteLine(i);
3             if (i < 9)
4             {
5                 i++;
6                 goto cc;
7             }

  非常简单,只要在跳转语句加上跳转条件,也就是i<9就好了

  goto语句只允许在一个语句块内跳出,或者在一个语句块内的一个地方跳到另一个地方;不允许从一个语句块外面跳入一个语句块的内部

原文地址:https://www.cnblogs.com/QueryWord/p/11325115.html