📦 归档笔记 — 原创建于 WizNote,仅作归档展示;观点以当年为准,非最新。

数值常量

创建时间2019-08-05最后修改2019-08-05原位置/程序员成长之旅/Go语言学习/笔记/字数296
目录:程序员成长之旅/Go语言学习/笔记

数值常量

数值常量是高精度的 值 。

一个未指定类型的常量由上下文来决定其类型。

再尝试一下输出 needInt(Big) 吧。

( int 类型最大可以存储一个 64 位的整数,有时会更小。)

( int 可以存放最大64位的整数,根据平台不同有时会更少。)

package main import "fmt" const ( // 将 1 左移 100 位来创建一个非常大的数字 // 即这个数的二进制是 1 后面跟着 100 个 0 Big = 1 << 100 // 再往右移 99 位,即 Small = 1 << 1,或者说 Small = 2 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(needInt(Small)) fmt.Println(needFloat(Small)) fmt.Println(needFloat(Big)) }

23

1 package

main 2 3 import

"fmt" 4 5 const ( 6

// 将 1 左移 100 位来创建一个非常大的数字 7

// 即这个数的二进制是 1 后面跟着 100 个 0 8

Big

=

1

<<

100 9

// 再往右移 99 位,即 Small = 1 << 1,或者说 Small = 2 10

Small

=

Big

99 11 ) 12 13 func

needInt ( x

int ) int { return

x * 10

1 } 14 func

needFloat ( x

float64 ) float64 { 15

return

x

0.1 16 } 17 18 func

main () { 19

fmt . Println ( needInt ( Small )) 20

fmt . Println ( needFloat ( Small ) ) 21

fmt . Println ( needFloat ( Big )) 22 } 23