Go基础:007.变量作用域

54 阅读1分钟

局部变量 & 全局变量

局部变量:在函数体内声明的变量称之为局部变量,它们的作用域只在函数体内。

全局变量:在函数体外声明的变量称之为全局变量,全局变量可以在整个包甚至外部包(被导出后)使用。

package main

import "fmt"

// 声明全局变量
var g int

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

	// 局部变量初始化
	a = 1
	b = 2
	c = 3

	// 全局变量初始化
	g = a + b + c

	fmt.Println(a, b, c) //1 2 3
	fmt.Println(g)       //6
}

局部变量与全局变量名称相同

package main

import "fmt"

// 声明全局变量
var g int = 10

func main() {
	// 声明同名局部变量
	var g int = 20

	fmt.Println(g) //20
}