go语言中 冒号(:)下划线(_)&与*的使用
package main
import (
"fmt"
)
var str string = “字符串1”
// var 定义变量 可以一次定义多个变量 go语言中未使用的变量会报错,需要注释或使用"_"丢弃
var a, b, _ int = 1, 2, 3
var num int 100
func main() {
newStr := “字符串2”;
// 等同于 var newStr string
// newStr = “字符串1”
// :=只能在函数内使用
fmt.Println(string) // 字符串1
fmt.Println(newStr) // 字符串2
fmt.Println(a,b)//这里只打印a和b(1,2)未使用变量c 需要用下划线丢弃
d,_ := 22,33
_,e := 22,44
fmt.Println(d) // 22
fmt.Println(e) // 44
fmt.Println(&num) // &符 放变量前边表示获取内存地址
fmt.Println(&num)
var a *int // 存储的是int的指针,目前为空
var b int = 4 // 存储的是int的值
a = &b // a 指向 b 的地址
a = b // a 无法等于 b,会报错,a是指针,b是值,存储的类型不同
fmt.Println(a) // 返回了地址
fmt.Println(*a) // *a:4返回地址值
fmt.Println(*&a) // *抵消了&,返回了地址本身
*a = 5 // 改变 a 的地址的值
fmt.Println(b) // b:5,改变后 b 同样受到改变,因为 a 的地址是指向 b 的
}