前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >厚土Go学习笔记 | 10. 常量 与 数值常量

厚土Go学习笔记 | 10. 常量 与 数值常量

作者头像
李海彬
发布2018-03-28 11:31:30
6770
发布2018-03-28 11:31:30
举报
文章被收录于专栏:Golang语言社区Golang语言社区

量的定义与变量类似,只是需要使用 const 关键字。

常量可以是字符、字符串、布尔型、数字型的值。

需要注意的是,常量不可以使用 := 语法定义。

代码语言:javascript
复制
package main

import (
    "fmt"
)

const Pi = 3.14

func main() {
    const World = "厚土"
    fmt.Println("Hello", World)
    fmt.Println("Happy", Pi, "Day")

    const Truth = true
    fmt.Println("Go rules?", Truth)
}

运行结果是

代码语言:javascript
复制
Hello 厚土
Happy 3.14 Day
Go rules? true

数值常量是高精度的 值。

未指定数据类型的常量,由上下文来决定其类型。

完整代码

代码语言:javascript
复制
package main

import (
    "fmt"
)

const (
    Big = 1 <<100
    Small = Big >> 99
)

func needInt(x int) int {
    return x * 10 + 1
}

func needFloat(x float64) float64 {
    return x * 0.1
}

func main() {
    //fmt.Println(Big)
    fmt.Println("Small is",Small)
    fmt.Println("needInt Small is",needInt(Small))
    fmt.Println("needFloat Small is",needFloat(Small))
    fmt.Println("needFloat Big is",needFloat(Big))
    //fmt.Println(needInt(Big))
}

你可以试着把主函数中的注释符号去掉,看看效果。

你会发现Big超出了int的最大值边界。

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

本文分享自 Golang语言社区 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档