第 5 节:常量

5:常量

1:常量定义使用

我们都知道,变量是用来存储数据,并且变量里面存储的值是可以在程序运行时随时发生变化的,但是,常量里面的值确定好后,后面是不允许修改的。下面看一下关于常量的定义使用:

常量的命名规范与变量命名规范一致。

问题:什么场景下会用到常量呢?
在程序开发中,我们用常量存储一直不会发生变化的数据,例如:π,身份证号码等。像这类的数据,在整个程序中运行中都是不允许发生改变的。

package main

import "fmt"

func main0501() {
    //var a int = 10
    //常量的定义  一般定义常量使用大写字母
    const MAX int = 10
    //常量可以参与程序的计算
    //b:=a+10
    //常量不允许左值赋值
    //a=a+10//err
    //a=100//err
    fmt.Println(MAX)

}
func main0502() {
    const MAX = "你瞅啥"

    //fmt.Println(MAX)
    //fmt.Printf("%T\n",MAX )
    //go语言常量的地址 不允许访问
    //fmt.Printf("%p",&MAX)//err
}

func main0503() {
    //计算圆的面积和周长
    //面积 PI*r*r  math.Pow(r,2)
    //周长 2*PI*r

    //PI 3.14
    //常量必须定义
    const PI float64 = 3.14
    var r float64

    fmt.Scan(&r)
    //面积
    s := PI * r * r
    //周长
    l := 2 * PI * r
    //fmt.Println(PI)
    fmt.Printf("面积:%.2f\n", s)
    fmt.Printf("周长:%.2f\n", l)

}

func main() {
    //数据区 -》常量区
    //字面常量
    fmt.Println("hello world")
    fmt.Println(3.14)
    a := 10
    fmt.Println(a + 20)

}

2:字面常量

所谓字面常量(literal),是指程序中硬编码的常量,如:

func main() {
    //数据区 -》常量区
    //字面常量
    fmt.Println("hello world")
    fmt.Println(3.14)
    a := 10
    fmt.Println(a + 20)

}

3:iota枚举

常量声明可以使用iota常量生成器初始化,它用于生成一组以相似规则初始化的常量,但是不用每行都写一遍初始化表达式。
注意:在一个const声明语句中,在第一个声明的常量所在的行,iota将会被置为0,然后在每一个有常量声明的行加一。
具体使用方式如下:

package main

import "fmt"

func main() {

    //iota枚举
    //iota枚举格式如果写在一行中值相等 如果换行值在上一行加一
    //const (
    //  a    = iota
    //  b, c = iota, iota
    //)

    //只需要对第一个进行iota赋值 后面会依次增长
    //const (
    //  a = iota
    //  b
    //  c
    //  d
    //)
    //在定义iota枚举时可以自定义赋值
    const (
        a = iota
        b = 10
        c = 20
        d
        e
        f = iota
        g
    )
    //a=100//err
    fmt.Println(a)
    fmt.Println(b)
    fmt.Println(c)
    fmt.Println(d)
    fmt.Println(e)
    fmt.Println(f)
    fmt.Println(g)
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
嗨,我是波波。曾经创业,有收获也有损失。我积累了丰富教学与编程经验,期待和你互动和进步! 公众号:上海PHP自学中心 付费知识星球:破解面试:程序员的求职导师
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
司机 @ 欣昊玉
文章
273
粉丝
339
喜欢
558
收藏
1106
排名:64
访问:12.2 万
私信
所有博文
社区赞助商