Go-常量

Posted binliubiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go-常量相关的知识,希望对你有一定的参考价值。

4. 常量

常量:使用一个名称来绑定一块内存地址,该内存地址中存放的数据类型由定义常量时指定的类型决定,而且该内存地址里面存放的内容不可以改变。Go中常量分为布尔型、宇符串型和数值型常量。常量存储在程序的只读段里(.rodatasection)。常量使用关键字const声明。
预声明标识符iota用在常量声明中,其初始值为0。一组多个常量同时声明时其值逐行增加,iota可以看作自增的枚举变量,专门用来初始化常量。

4.1 iota示例

const x = iota   // x == 0
const y = iota   // y == 0

// 定义多个常量
const (
	c0 = iota  // c0 == 0
    c1 = iota  // c1 == 1
    c2 = iota  // c2 == 2
)
// 等价
const (
	c0 = iota  // c0 == 0
    c1         // c1 == 1
    c2         // c1 == 2
)

// 
const (
	a = iota    // a == 0
    b = 1
    c           // c == 2
)

常量,变量与字面量

  • 常量和变量都是变量,常量是赋过值后不能再改变,普通的变量可以再进行赋值操作
  • 字面量:由字母,数字等构成的,它只能作为右值(等号右边的值)出现
var a int // a为变量
const b int = 2; //b为常量,2为字面量
var str string = "hello world!"  // str 为变量,hello world! 为字面量

以上是关于Go-常量的主要内容,如果未能解决你的问题,请参考以下文章

Go语言逆向技术:常量字符串

你不知道的 Go 之 const

你不知道的 Go 之 const

[Go] 通过 17 个简短代码片段,切底弄懂 channel 基础

解决go: go.mod file not found in current directory or any parent directory; see ‘go help modules‘(代码片段

004_go语言中的常量