GO语言基础-03-变量和作用域(变量声明、局部变量、全局变量)

1 变量声明

1.1标准格式

var 变量名 变量类型 =

1.2 不声明类型

说明:此时 类型会自行判断

  • 语法
var 变量名 =

1.3 不声明值(使用默认值)

  • 语法
var 变量名 变量类型
  • 默认值
    1)数值类型(包括complex64/128)为 0
    2)布尔类型为 false
    3)字符串为 “”(空字符串)
    4)以下几种类型为 int
var a *int
var a []int
var a map[string] int
var a chan int
var a func(string) int
var a error // error 是接口
  • 示例
package main

import "fmt"

func main() {
    var i int
    var f float64
    var b bool
    var s string
    fmt.Printf("%v %v %v %q\n", i, f, b, s)
}

1.4 :=

变量名 :=

注意
:= 的写法只有在函数内才能生效,在函数外语法报错

如下图 sum := 0 在函数外定义语法报错
image.png

如果放在函数内,则语法检测通过

image.png

2. 多变量一次声明

2.1 相同类型变量

var vname1, vname2, vname3 type
vname1, vname2, vname3 = v1, v2, v3
var vname1, vname2, vname3 = v1, v2, v3 
vname1, vname2, vname3 := v1, v2, v3 

2.2 不同类型的变量

var (
    vname1 v_type1
    vname2 v_type2
) 

3. 变量作用域

3.1 局部变量

在函数体内声明的变量称之为局部变量

它们的作用域只在函数体内(参数和返回值变量也是局部变量)。

3.2 全局变量

在函数体外声明的变量称之为全局变量

全局变量可以在整个包甚至外部包(被导出后)使用。

全局变量与局部变量名称相同时,局部变量会被优先考虑


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玄德公笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值