变量

在go语言中使用关键字var声明变量。go的变量在声明后就会有默认的类型零值。

//声明不赋值
var a int    //定义了a为int,a的初始值位0
var b bool   //定义了b为布尔型,b的初始值为false
var str string //定义了str为布尔型,str的初始值为""(空字符串)

//声明且赋值
var a int=1
var b boo=true
var str string= "str"

//使用类型推断简写
var a =1
var b = true
var str ="str"

//使用var()简写

var(
	a = 1
	b = true
	str ="str"
)


//使用:=简写
a :=1
b := true
str :="str"
a,b,c :=1,true,"str" //ok

//指针类型变量
a := 1
aPtr = &a //aPtr int指针类型

aFunc := func(a int) int { return a}
aFuncPtr := &aFunc //aFuncPtr函数指针类型

需要注意的是go语言中非全局变量,声明了是需要使用的,声明了没使用的变量在编译的时候会报错。

package main

import "fmt"

const s = "testt.org"
var a byte = 1 << len(s) / 128  //a是全局变量 定义没被使用是允许的

func main() {

	c := 4 // c declared but not used
	b := 9
	fmt.Println(b)
}