问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

go语言中全局变量和局部变量的区别

发布网友 发布时间:2022-04-22 10:52

我来回答

1个回答

热心网友 时间:2023-10-11 12:09

局部变量
在函数体内声明的变量称之为局部变量,它们的作用域只在函数体内,参数和返回值变量也是局部变量。
以下实例中 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)
}

以上实例执行输出结果为:
结果: a = 10, b = 20 and c = 30

全局变量
在函数体外声明的变量称之为全局变量,全局变量可以在整个包甚至外部包(被导出后)使用。
全局变量可以在任何函数中使用,以下实例演示了如何使用全局变量:
package main

import "fmt"

/* 声明全局变量 */
var g int

func main() {

/* 声明局部变量 */
var a, b int

/* 初始化参数 */
a = 10
b = 20
g = a + b

fmt.Printf("结果: a = %d, b = %d and g = %d\n", a, b, g)
}

以上实例执行输出结果为:
结果: a = 10, b = 20 and g = 30

Go 语言程序中全局变量与局部变量名称可以相同,但是函数内的局部变量会被优先考虑。实例如下:
package main

import "fmt"

/* 声明全局变量 */
var g int = 20

func main() {
/* 声明局部变量 */
var g int = 10

fmt.Printf ("结果: g = %d\n", g)
}

以上实例执行输出结果为:
结果: g = 10
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... go语言如何调用c函数 怎么样使用Go语言中函数的参数传递与调用 go语言import时为什么都从github导入 go语言import时为什么都从github导入 有高尔夫球基础知道的资料吗? 学习高尔夫时,初学者最大的学习障碍是什么? 高尔夫球的基础规则 高尔夫球入门者,准备上场,一般要准备那几支球杆? 高尔夫入门 高尔夫球新手学习过程中需要注意什么? 怎么学习高尔夫球? 高尔夫 高尔夫入门教学 如何打高尔夫球 高尔夫入门要上几节课 免费回合制Q版网游 介绍款免费的回合制Q版网游 找好玩的2D回合制Q版网游、 推荐一款回合制Q版网游 有人推荐一个好的2D即时制Q版网游吗?我就要即时制的 回合制Q版网游有哪些??要免费的哟~! Q版3d角色扮演网游 go语言如何调用底层api??? go语言怎么使用 第三方包ecdh 如何在golang 中调用c的静态库或者动态库 李敦是什么? 李敦的介绍 慧贤皇贵妃深受宠爱,乾隆为何要斩她兄弟,连傅恒求情也没用? 谁能告诉我小哇的 侠骨丹心 的剧情简介? "苏门四学士"是哪些人? 李敦仙舟是什么动物 1753年发生的中国历史 求书,古代男女主双重生 侠骨丹心的剧情简介 乾隆皇帝那么多岳父,他是怎么对待他们的? 史白都的六合帮 侠骨丹心的介绍 侠骨丹心灰狼是谁 李敦颐个人资料啊!!!!!!! 信阳李敦峰简介 参茸固本还少丸效果怎么样 适合什么人服用 晋城大君,晋城大君是怎么登基的?