Go 语言常量

Go 语言变量的定义用 const 关键字,定义的格式为:const  变量名  [类型] = 初始值

const a int = 10
const b = 10

其实常量的定义只是把变量中的 var 替换为常量关键字 const,定义格式如变量中的定义,具体的可以参考 Go 语言变量的定义、用法、示例

常量可以用len(), cap(), unsafe.Sizeof()常量计算表达式的值。常量表达式中,函数必须是内置函数,否则编译不过,示例:

// Demo01 project main.go
package main

import "unsafe"

const (
	a = "abc"
	b = len(a)
	c = unsafe.Sizeof(a)
)

func main() {
	println(a, b, c)
}

输出的结果:abc 3 16


iota:

iota,特殊常量,它是一个可以被编译器修改的常量,因为每次 const 出现时都会被赋值为0,示例:

// Demo01 project main.go
package main

import (
	"fmt"
)

func main() {
	const (
		a = iota
		b = 1
		c = 2
		d = iota
	)

	fmt.Println(a, b, c, d)
}

输出结果:0 1 2 3


特别提醒,const因式分解的变量,只要其中一个赋值,后面所有未赋值变量的值都与前一个最近的赋值的变量的值相同,示例:

// Demo01 project main.go
package main

import "fmt"

const (
	a = 1
	b
	c
	d
	e = 2
	f
	g
)

func main() {
	fmt.Println(a, b, c, d, e, f, g)
}

结果为: 1 1 1 1 2 2 2


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比嗨皮兔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值