前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >第13节 常量的使用

第13节 常量的使用

作者头像
小尘哥
发布2019-07-05 10:10:08
4290
发布2019-07-05 10:10:08
举报
文章被收录于专栏:小尘哥的专栏

基本语法——常量constant

一、常量的使用

1.1 常量声明

常量是一个简单值的标识符,在程序运行时,不会被修改的量。

代码语言:javascript
复制
const identifier [type] = value
代码语言:javascript
复制
显式类型定义: const b string = "abc"隐式类型定义: const b = "abc"
代码语言:javascript
复制
package mainimport "fmt"func main() {   const LENGTH int = 10   const WIDTH int = 5      var area int   const a, b, c = 1, false, "str" //多重赋值   area = LENGTH * WIDTH   fmt.Printf("面积为 : %d", area)   println()   println(a, b, c)   }

运行结果:

代码语言:javascript
复制
面积为 : 501 false str

常量可以作为枚举,常量组

代码语言:javascript
复制
const (    Unknown = 0    Female = 1    Male = 2)

常量组中如不指定类型和初始化值,则与上一行非空常量右值相同

代码语言:javascript
复制
package mainimport (    "fmt")func main() {    const (        x uint16 = 16        y        s = "abc"        z    )    fmt.Printf("%T,%v\n", y, y)    fmt.Printf("%T,%v\n", z, z)}

运行结果:

代码语言:javascript
复制
uint16,16string,abc

常量的注意事项:

  • 常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型
  • 不曾使用的常量,在编译的时候,是不会报错的
  • 显示指定类型的时候,必须确保常量左右值类型一致,需要时可做显示类型转换。这与变量就不一样了,变量是可以是不同的类型值

1.2 iota

iota,特殊常量,可以认为是一个可以被编译器修改的常量

iota 可以被用作枚举值:

代码语言:javascript
复制
const (    a = iota    b = iota    c = iota)

第一个 iota 等于 0,每当 iota 在新的一行被使用时,它的值都会自动加 1;所以 a=0, b=1, c=2 可以简写为如下形式:

代码语言:javascript
复制
const (    a = iota    b    c)

iota 用法

代码语言:javascript
复制
package mainimport "fmt"func main() {    const (            a = iota   //0            b          //1            c          //2            d = "ha"   //独立值,iota += 1            e          //"ha"   iota += 1            f = 100    //iota +=1            g          //100  iota +=1            h = iota   //7,恢复计数            i          //8    )    fmt.Println(a,b,c,d,e,f,g,h,i)}

运行结果:

代码语言:javascript
复制
0 1 2 ha ha 100 100 7 8

如果中断iota自增,则必须显式恢复。且后续自增值按行序递增

自增默认是int类型,可以自行进行显示指定类型

数字常量不会分配存储空间,无须像变量那样通过内存寻址来取值,因此无法获取地址

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陌与尘埃 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基本语法——常量constant
    • 一、常量的使用
      • 1.1 常量声明
      • 1.2 iota
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档