Golang 基础语法
2019-03-15 本文已影响4人
Gundy_
基础语法
变量定义
var a int
var s string
var a, b int = 3, 4
var a, s, c = 3, "def", true
var (
a = 4
ss = "kkk"
bb = true
)
a, s, c := 3, "def", true //只能在函数内
内建变量类型
- bool, string
- (u)int, int8, int16, int32, int64, uintptr
- byte, rune (char int32)
- float32 float64 complex64 complex128
常量与枚举
const filename = "abc.txt"
const a, b = 3,4
const (
filename = "abc.txt"
a, b = 3,4
}
const (
cpp = iota
java
python
golang
)
条件语句
- if
- if... else
- switch (不需要break,可以直接switch多个条件)
- select
循环语句
只有一个for循环
for init; condition; post { }
for condition { }
for {}
for a := 0; a < 10; a++ {
fmt.Printf("a 的值为: %d\n", a)
}
for a < b {
a++
}
for i,x:= range numbers {
}
循环控制语句
- break 语句
- continue语句
- goto语句
函数
func function_name( [parameter list] ) [return_types]
{
函数体
}
- 返回值类型写在后面
- 可返回多个值
- 函数作为参数
- 没有默认参数,可选参数
指针
var a int= 20 /* 声明实际变量 */
var ip *int /* 声明指针变量 */
ip = &a /* 指针变量的存储地址 */
fmt.Printf("a 变量的地址是: %x\n", &a )
/* 指针变量的存储地址 */
fmt.Printf("ip 变量的存储地址: %x\n", ip )
/* 使用指针访问值 */
fmt.Printf("*ip 变量的值: %d\n", *ip )
a 变量的地址是: 20818a220
ip 变量的存储地址: 20818a220
*ip 变量的值: 20