Go - goto 语句


Go 编程语言中的goto语句提供从 goto 到同一函数中标记语句的无条件跳转。

注意- 在任何编程语言中都强烈建议不要使用goto语句,因为它很难跟踪程序的控制流,从而使程序难以理解且难以修改。任何使用 goto 的程序都可以使用其他结构重写。

句法

Go 中goto语句的语法如下 -

goto label;
..
.
label: statement;

这里,label可以是除 Go 关键字之外的任何纯文本,并且可以设置在 Go 程序中 goto语句上方或下方的任何位置。

流程图

Go goto 语句

例子

package main

import "fmt"

func main() {
   /* local variable definition */
   var a int = 10

   /* do loop execution */
   LOOP: for a < 20 {
      if a == 15 {
         /* skip the iteration */
         a = a + 1
         goto LOOP
      }
      fmt.Printf("value of a: %d\n", a)
      a++     
   }  
}

当上面的代码被编译并执行时,它会产生以下结果 -

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19
go_loops.htm