Go 语言 goto 语句
Go 语言的 goto 语句可以无条件地将执行流程转移到 label 指定的行
goto 语句通常与条件语句配合使用,可用来实现条件转移, 构成循环,跳出循环体等功能
但是,在结构化程序设计中一般不主张使用 goto 语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难
但是,Go 这么简洁的语言竟然还保留了 goto ,说明它还是很有用的,是不是很矛盾
语法
Go 语言 goto 语句语法格式如下
goto label; .. ... label: statement;
label 可以在 goto 语句之前,也可以在 goto 语句之后
break 语句流程图
Go 语言 break 语句执行流程如下
范例
/** * file: main.go * author: 简单教程(www.twle.cn) * Copyright © 2015-2065 www.twle.cn. All rights reserved. */ package main import "fmt" func main() { /* 定义局部变量 */ var a int = 11 /* 循环 */ LOOP: for a < 17 { if a == 15 { /* 跳过迭代 */ a = a + 1 goto LOOP } fmt.Printf("a的值为 : %d\n", a) a++ } }
编译运行以上 Go 语言范例,输出结果如下
a的值为 : 10 a的值为 : 11 a的值为 : 12 a的值为 : 13 a的值为 : 14 a的值为 : 16