Go语言入门教程(03):详解数据类型之整型与浮点型
文章自公众号:Go编程时光
《Go编程时光》,一个能带你学习 Go 语言的专栏,同时欢迎搜索我的同名公众号,时间获取Go语言干货。
1. 整型
Go 语言中,整数类型可以再细分成10个类型,为了方便大家学习,我将这些类型整理成一张表格。
int 和 uint 的区别就在于一个 u
,有 u
说明是无符号,没有 u
代表有符号。
解释这个符号的区别
以 int8
和 uint8
举例,8 代表 8个bit,能表示的数值个数有 2^8 = 256。
uint8 是无符号,能表示的都是正数,0-255,刚好256个数。
int8 是有符号,既可以正数,也可以负数,那怎么办?对半分呗,-128-127,也刚好 256个数。
int8 int16 int32 int64 这几个类型的后都有一个数值,这表明了它们能表示的数值个数是固定的。
而 int 没有并没有指定它的位数,说明它的大小,是可以变化的,那根据什么变化呢?
- 当你在32位的系统下,int 和 uint 都占用 4个字节,也就是32位。
- 若你在64位的系统下,int 和 uint 都占用 8个字节,也就是64位。
出于这个原因,在某些场景下,你应当避免使用 int 和 uint ,而使用更加的 int32 和 int64,比如在二进制传输、读写文件的结构描述(为了保持文件的结构不会受到不同编译目标平台字节长度的影响)
不同进制的表示方法
出于习惯,在初始化数据类型为整型的变量时,我们会使用10进制的表示法,因为它直观,比如这样,表示整数10.
var num int = 10
相关文章