前两天经过不断度娘,与对up主的跟踪学习了解了go的历史,今天开始了go的基础!!
本章主要是go 的注释、变量及常量的梳理
不管什么语言都有自己的注释,go也不例外 !!
单行注释 //
多行注释
/**
代码段
*/
这二者的用法就不扯了,别的语言都是有的。
但是我要强调一点,在开发过程中良好的注释会让开发者赏心悦目,逻辑清晰,要养成良好注释的习惯
/** 格式: var name typevar 声明变量name 变量名type 变量类型*/var name string = "bianliang"var age int = 18fmt.Println(name, age)
/**定义多个变量如果没有赋值,每个类型有默认值string默认为空int默认为空*/var (name stringage intaddr string)fmt.Println(name, age, addr)//变量赋值name = "lainxi"age = 18addr = "广西"fmt.Println(name, age, addr)
/**通过 := 定义 自动推到 初始化 短变量如果已经通过var 定义过变量在使用 := 打印时会报错已经不是心得变量*/name := "ceshi"age := 18fmt.Println(name, age)fmt.Printf("%T,%T", name, age) //打印变量数据类型 内存地址
/**内存地址 %p*/var num intnum = 100fmt.Printf("name: %d ,内存地址:%p", num, &num) //&取地址符num = 200fmt.Printf("name: %d ,内存地址:%p", num, &num) //值会改变,内存地址不会改变
/**变量交换a = 100b = 200a、b值交换其他语言:定义中间量 t = 0t = aa = bb = t*/var a int = 100var b int = 200b, a = a, b //go中两值交换fmt.Println("a=====>", a, " b===>", b)
func main(){/**匿名变量*///a, b := test()//fmt.Println("a=====>", a, " b===>", b)a, _ := test() // 只想接受一个值fmt.Println("a=====>", a)} func test() (int, int) { //定义test函数return 100, 200
}
/**变量的作用域局部 在某一个函数中定义的 变量全局 函数外定义的变量名可以重复使用但当打印的时候就近原则*/
/**定义格式: const name typeconst 声明常量name 常量名type 常量类型 (可省略)
*/const name string = "ceshi" //显示定义
const name2 = "lalal" //隐式定义 将字段类型隐藏起来
fmt.Println(name, name2) //打印
const a, b, c = 1, 2, 3 //多常量定义 逗号隔开
fmt.Println(a, b, c)
打印结果:
const (a = iotab = iotacdefg = 100hi = iota)fmt.Println(a, b, c, d, e, f, g, h, i)
大家猜一猜打印出来是是什么????动手试试
一定要动手试试 ,好记性不如烂笔头!!!熟能生巧 一定要多练习