欢迎您的访问
专注于Java技术系列文章的Java技术分享网站

三十二、Go 语言 goto 语句

文章永久连接:https://tech.souyunku.com/?p=5340

Go 语言的 goto 语句可以无条件地将执行流程转移到 label 指定的行

goto 语句通常与条件语句配合使用,可用来实现条件转移, 构成循环,跳出循环体等功能

但是,在结构化程序设计中一般不主张使用 goto 语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难

但是,Go 这么简洁的语言竟然还保留了 goto ,说明它还是很有用的,是不是很矛盾

语法

Go 语言 goto 语句语法格式如下

goto label;
..
...
label: statement;

label 可以在 goto 语句之前,也可以在 goto 语句之后

break 语句流程图

Go 语言 break 语句执行流程如下

img_1.png

范例

/**
 * file: main.go
 * author: 搜云库技术团队(tech.souyunku.com)
 * Copyright © 2015-2065 tech.souyunku.com. 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

干货推荐

本站推荐:精选优质专栏

附录:GOlang 教程:系列文章

赞(94) 打赏



版权归原创作者所有,任何形式转载请联系作者;搜云库 » 三十二、Go 语言 goto 语句

本站:免责声明!

评论 抢沙发

一个专注于Java技术系列文章的技术分享网站

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏