常量、操作符与指针

常量、操作符与指针 #

常量 #

定义 #

  • 常量使用 const 关键字进行定义
  • 常量的值在编译时确定,所以运行时无法改变
  • 常量表达式中的函数必须是内置函数(因为自己写的函数的返回值是在运行时确定的)

示例

const (
	text, size = "text", len(text)
)

常量组中如果不指定默认值则使用上行表达式的值

const (
	a = 1	//常量必须有值,所以a必须指定值
	b
	c
)

fmt.Println(a, b, c)	//1 1 1

iota #

  • iota 是常量组中的计数器,从0开始,常量组中每定义一个常量时 iota 的值会自动加1
  • 每定义一个新的常量组时,iota 都会清零
const (
	d = "D"
	e
	f = iota
	g
)
const (
	k = iota
)


fmt.Println(d, e, f, g) //D D 2 3
fmt.Println(k)          //0

操作符 #

++,-- 只能作为语句,即一行单独的 ++

a := 1
a++
fmt.Println(a)

var b = ++a //error

指针 #

  • 采用 “.” 直接操作指针
  • 使用 “&” 取变量地址
  • 使用 “*” 通过指针间接访问对象
  • 指针默认值为 nil 而非 null
  • 定义指针时不能省略类型
a := 1
var pa *int = &a
fmt.Println(pa)  //0xc0820062e0
fmt.Println(*pa) //1

var pb *int
fmt.Println(pb) //nil
沪ICP备17055033号-2