一. 整型
注意: 内建len()
函数返回的长度是int类型的,但究竟是int32还是int64要看系统的情况
切片或 map 的元素数量等都可以用int
来表示。在涉及到二进制传输、读写文件的结构描述时,为了保持文件的结构不会受到不同编译目标平台字节长度的影响,不要使用int
和 uint
。
数字字面量语法(Number literals syntax)
Go1.13版本之后引入了数字字面量语法,这样便于开发者以二进制、八进制或十六进制浮点数的格式定义数字,例如:
v := 0b00101101, 代表二进制的 101101,相当于十进制的 45。
v := 0o377,代表八进制的 377,相当于十进制的 255。
v := 0x1p-2,代表十六进制的 1 除以 2²,也就是 0.25。
而且还允许我们用 _ 来分隔数字,比如说:v := 123_456 等于 123456。
我们可以借助fmt函数来将一个整数以不同进制形式展示。
package main import "fmt" func main() { // 十进制 var a int = 10 fmt.Printf("%d \n", a) // 10 fmt.Printf("%b \n", a) // 以二进制输出 1010 fmt.Printf("%o \n", a) // 以八进制输出 12 fmt.Printf("%x \n", a) // 以十六进制输出 a fmt.Printf("%T \n", a) // 查看a的类型 int // 八进制 以0开头 var b int = 077 fmt.Printf("%o \n", b) // 77 // 十六进制 以0x开头 var c int = 0xff fmt.Printf("%x \n", c) // ff fmt.Printf("%X \n", c) // FF // 声明int8类型 var d int8 = 22 e := int8(33) fmt.Printf("%T \n", d) // int8 fmt.Printf("%T \n", e) // int8 }
二. 浮点型
--- 君子处其实,不处其华;治其内,不治其外 张居正 ----
原文:https://www.cnblogs.com/jiangzongyou/p/12153235.html