先举个栗子,全局作用域变量,与 := 符号声明赋值新变量

package main

import "fmt"

var a = "GG"

func main() {
    n()
    m()
    n()
}
func n() {
    fmt.Println(a)
}
func m() {
    // 对于 := 定义的变量,新变量a与全局已定义的a变量同名,不在一个作用域
    //所以golong定义新的变量a。遮住全局变量a,所以m()打印"66"
    a := "66"
    fmt.Println(a)
}

局部变量

在函数体内声明的变量称之为局部变量,它们的作用域只在函数体内,参数和返回值变量也是局部变量。

以下实例中 main() 函数使用了局部变量 a, b, c:

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)
}
局部变量声明

相关文章: