1. 基本介绍

1)函数内部声明/定义的变量叫局部变量,作用域仅限于函数内部

package main
import (
	"fmt"
)
// 函数
func test() {
	// age、Name为局部变量,仅在test函数内部有效
	age := 10
	Name := "tom~"
}

func main() {
	fmt.Println("age=",age)  // 超出作用域,报错
	fmt.Println("Number=",Number) // 超出作用域,报错
}

2)函数外部声明/定义的变量叫全局变量,如果首字母为大写,则作用域在整个程序有效,如果不为大小,作用域在整个包中有效

3)如果变量是在一个代码块,比如for/if中,那么这个变量的作用域就在该代码块

package main
import (
	"fmt"
)

func main() {
	// 如果变量是在一个代码块里,比如for/if中,那么这个变量的作用域就在该代码块中
	for i := 0; i <= 10; i++ {
		fmt.Println("i=",i)
	}

	var i int // 局部变量
	for i = 0; i <= 10; i++ {
		fmt.Println("222 i=",)
	}
}