ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 一、局部变量 ~~~ package main import "fmt" func main() { /* 声明局部变量 */ var a, b, sum int /* 初始化参数 */ a = 100 b = 200 sum = a + b fmt.Printf("结果: a = %d, b = %d ,sum = %d\n", a, b, sum) } ~~~ 执行结果: 结果: a = 100, b = 200 ,sum = 300 ## 二、全局变量 在函数体外声明的变量称之为全局变量,全局变量可以在整个包甚至外部包(被导出后)使用。 ~~~ package main import "fmt" /* 声明全局变量 */ var sum int func main() { /* 声明局部变量 */ var a, b int /* 初始化参数 */ a = 100 b = 200 sum = a + b fmt.Printf("结果: a = %d, b = %d , sum = %d\n", a, b, sum) } ~~~ 执行结果: 结果: a = 100, b = 200 , sum = 300 ## 三、就近原则 ~~~ package main import "fmt" /* 声明全局变量 */ var g int = 20 func main() { /* 声明局部变量 */ var g int = 10 fmt.Printf("结果: g = %d\n", g) } ~~~ 执行结果: 结果: g = 10 ## 四、全局变量和局部变量 ~~~ package main import "fmt" /* 声明全局变量 */ var a int = 20 func main() { /* main 函数中声明局部变量 */ var a int = 10 var b int = 20 var c int = 0 fmt.Printf("main()函数中 a = %d\n", a) c = sum(a, b) fmt.Printf("main()函数中 c = %d\n", c) } /* 函数定义-两数相加 */ func sum(a, b int) int { fmt.Printf("sum() 函数中 a = %d\n", a) fmt.Printf("sum() 函数中 b = %d\n", b) return a + b } ~~~ 执行结果: main()函数中 a = 10 sum() 函数中 a = 10 sum() 函数中 b = 20 main()函数中 c = 30