您现在的位置是:网站首页> 编程资料编程资料
go语言 全局变量和局部变量实例_Golang_
2023-05-26
435人已围观
简介 go语言 全局变量和局部变量实例_Golang_
一、局部变量
1 定义在{}里面的变量时局部变量,只能在{}里面有效
2 执行到定义的那句话,开始分配内存空间,离开作用域自动进行释放
3 作用域,就是变量作用的范围
package main import "fmt" func test() { i := 111 fmt.Println("i=", i) } func main() { test() { i := 10 fmt.Printf("i=%v\n", i) } // i=12 错误 if flag := 3; flag == 3 { fmt.Println("flag=", flag) } //fmt.Println("flag=", flag) 错误 }二、全局变量
1 定义在函数外部的变量称为全局变量
2 全局变量在任何地方都可以进行使用
package main import "fmt" func test() { fmt.Println("a= ", a) } var a int func main() { a = 12 fmt.Println("a= ", a) test() }三、不同作用域中,同名变量
1 不同的作用域,允许定义同名的变量
2 使用变量的原则,就近原则,如果局部变量没有,就去全局变量中找
package main import "fmt" //定义一个全局变量 var a byte func main() { var a int fmt.Printf("1: a type is %T\n", a) //int { var a float32 fmt.Printf("2: a type is %T\n", a) // float32 } test() } func test() { fmt.Printf("3: a type is %T\n", a) //uint8 }补充:golang全局变量的坑-尽量别用全局变量
看图片吧~

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
您可能感兴趣的文章:
相关内容
- go语言 bool类型的使用操作_Golang_
- Go语言获取系统性能数据gopsutil库的操作_Golang_
- golang获取网卡信息操作_Golang_
- golang判断net.Conn 是否已关闭的操作_Golang_
- golang:json 反序列化的[]和nil操作_Golang_
- 解决Golang json序列化字符串时多了\的情况_Golang_
- 解决golang json解析出现值为空的问题_Golang_
- Go语言设置JSON的默认值操作_Golang_
- golang 获取字符串长度的案例_Golang_
- 使用Go module和GoLand初始化一个Go项目的方法_Golang_
