C# goto语句的用法(附带示例)
C# 中的 goto 语句是无条件跳转语句,使用 goto 语句可以无条件地使程序跳转到方法内部的任何一条语句。
goto 后面带有一个标识符,这个标识符是同一个方法内某条语句的标号。标号可以出现在任何可执行语句的前面,并且以冒号
C# goto 语句的一般语法格式如下:
例如下面的代码:
【示例】使用 goto 语句计算 1 到 100 的累加和,代码如下:
1到100的累加结果是5050
但是也正是由于 goto 语句的这种特性,在程序设计中一般不主张使用 goto 语句,以免造成程序流程的混乱,使理解和调试程序产生困难。
goto 后面带有一个标识符,这个标识符是同一个方法内某条语句的标号。标号可以出现在任何可执行语句的前面,并且以冒号
:
作为后缀。C# goto 语句的一般语法格式如下:
goto 标识符;
goto 后面的标识符是要跳转的目标,这个标识符要在程序的其他位置给出,但是其标识符必须在方法内部。例如下面的代码:
goto Lable; Console.WriteLine("the message before Label"); Lable: Console.WriteLine("the Label message");在上面的代码中,goto 后面的 Lable 是跳转的标识符,Lable 后面的代码表示 goto 语句要跳转到的位置。在上面的代码中,第一个输出语句将不会被执行,而是直接去执行 Lable 标识符后面的语句。
注意
跳转的方向可以向前,也可以向后;可以跳出一个循环,也可以跳入一个循环。【示例】使用 goto 语句计算 1 到 100 的累加和,代码如下:
static void Main(string[] args) { int iNum = 0; //定义一个整数类型变量,并初始化为0 int iSum = 0; //定义一个整数类型变量,并初始化为0 label: //定义一个标签 iNum++; //iNum自增1 iSum += iNum; //累加求和 if (iNum< 100) //判断iNum是否小于100 { goto label; //转向标签 } Console.WriteLine("1到100的累加结果是" + iSum); //输出结果 Console.ReadLine(); }运行结果:
1到100的累加结果是5050
注意
C# goto 语句可以忽略当前程序的逻辑,直接使程序跳转到某一语句执行,有时非常方便。但是也正是由于 goto 语句的这种特性,在程序设计中一般不主张使用 goto 语句,以免造成程序流程的混乱,使理解和调试程序产生困难。