zoukankan      html  css  js  c++  java
  • 流程控制

    Go语言支持如下的几种流程控制语句:

    1. 条件语句,对应的关键字为ifelseelse if
    2. 选择语句,对应的关键字为switchcaseselect(将在介绍channel的时候细说);
    3. 循环语句,对应的关键字为forrange
    4. 跳转语句,对应的关键字为goto。 

    在具体的应用场景中,为了满足更丰富的控制需求, Go语言还添加了如下关键字: break
    continuefallthrough

    条件语句

    if a < 5 {
    return 0
    } else {
    return 1
    }
    关于条件语句,需要注意以下几点:
    条件语句不需要使用括号将条件包含起来()
    无论语句体内有几条语句,花括号{}都是必须存在的;
    左花括号{必须与if或者else处于同一行;
    if之后,条件语句之前,可以添加变量初始化语句,使用;间隔;
    在有返回值的函数中,不允许将“最终的” return语句包含在if...else...结构中,
    否则会编译失败

    选择语句

    根据传入条件的不同,选择语句会执行不同的语句。下面的例子根据传入的整型变量i的不
    同而打印不同的内容:
    switch i {
    case 0:
    fmt.Printf("0")
    case 1:
    fmt.Printf("1")
    case 2:
    fallthrough
    case 3:
    fmt.Printf("3")
    case 4, 5, 6:
    fmt.Printf("4, 5, 6")
    default:
    fmt.Printf("Default")
    }

    在使用switch结构时,我们需要注意以下几点:
    左花括号{必须与switch处于同一行;
    条件表达式不限制为常量或者整数;
    单个case中,可以出现多个结果选项;
    C语言等规则相反, Go语言不需要用break来明确退出一个case
    只有在case中明确添加fallthrough关键字,才会继续执行紧跟的下一个case
    可以 不设定switch之 后的条 件表达式, 在此种情况 下,整个switch结构与 多个
    if...else...的逻辑作用等同。



    循环语句

    Go语言中的循环语句只支持for关键字,而不支持whiledo-while
    结构。关键字for的基本使用方法与CC++中非常接近:
    sum := 0
    for i := 0; i < 10; i++ {
    sum += i
    }

    使用循环语句时,需要注意的有以下几点。
    左花括号{必须与for处于同一行。
    Go语言中的for循环与C语言一样,都允许在循环条件中定义和初始化变量,唯一的区别
    是, Go语言不支持以逗号为间隔的多个赋值语句,必须使用平行赋值的方式来初始化多
    个变量。
    Go语言的for循环同样支持continuebreak来控制循环,但是它提供了一个更高级的
    break,可以选择中断哪一个循环,如下例:
    for j := 0; j < 5; j++ {
    for i := 0; i < 10; i++ {
    if i > 5 {
    break JLoop
    }
    fmt.Println(i)
    }
    }
    JLoop:
    // ...

    跳转语句

    goto 到某个标签,基本不用

    func myfunc() {
    i := 0
    HERE:
    fmt.Println(i)
    i++
    if i < 10 {
    goto HERE
    }
    }
    

      

  • 相关阅读:
    第一个驱动
    call Eip 技巧
    Win32 XP 下和WIN7下获取Kernel32基址的方法
    利用伪造内核文件来绕过IceSword的检测
    HOOK IDT (1)第一种方法,Int 0x2e
    壳的编写 :【统一节区粒度】
    壳的编写 【文件打开选择对话框】
    71币值转换
    71打印沙漏
    介绍自己
  • 原文地址:https://www.cnblogs.com/tomhuang/p/11535775.html
Copyright © 2011-2022 走看看