Learn Golang in Day 8

栏目: Go · 发布时间: 7年前

Learn Golang in Day 8

变量作用域

  • 局部变量
  • 全局变量
  • 形参也是局部变量

局部变量

  • 函数内部声明的变量是局部变量
package main

import "fmt"

func main() {
/* 声明局部变量 */
var a, b, c int

/* 初始化参数 */
a = 10
b = 20
c = a + b

fmt.Printf("结果: a = %d, b = %d and c = %d\n", a,b,c)

}

全局变量

  • 函数体之外定义的变量都是全局变量
  • 全局变量可以在整个包作用域内使用,外部包使用时需要导出
package main

import "fmt"

/* 声明全局变量 */
var g int

func main() {
    var a, b int 

    /* 初始化参数 */
  a = 10
    b = 20

    g = a + b

    fmt.Printf("result: a = %d, b = %d, g = %d\n", a , b, )
    fmt.Printf("a and b is local variable , but g is global variable.\n")
}

形式参数 formal paramter

  • 形式参数也是局部变量
  • 对局部变量的修改,只对当前作用域有效
package main

import "fmt"

//全局变量
var a int = 20

func main() {
    /* 局部变量 */
    var a int = 10
    var b int = 20
    var c int = 0

    fmt.Printf("a =%d in the main function.\n", a)
    c = sum(a,b)
    fmt.Printf("c = %d in the main function.\n", c)
    fmt.Printf("a=%d, in main function.\n", a)
}


func sum(a, b int) int {
    a++
fmt.Printf("a=%d, in sum function.\n", a)
fmt.Printf("b=%d, in sum function.\n", b)
return a + b
}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java程序设计与应用开发

Java程序设计与应用开发

於东军 / 清华大学出版社 / 2005-3 / 27.00元

本书作为Java程序的入门与应用教材,共分为3部分:第一部分讲解Java程序设计的基础知识,包括Java基本编程语言、面向对象设计思想、类、对象、接口以及异常处理。第二部分讲解Java程序设计的高级知识,包括:GUI编程、套接口编程、I/O系统、数据库访问以及多线程编程。第三部分详细分析一个实际项目的开发过程,包括系统分析及功能实现。在项目实例中综合应用第一、二部分的Java知识,能够帮助读者进一......一起来看看 《Java程序设计与应用开发》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具