Golang: int, int8, int16, int32, int64 和 uint 区别
测试
unsafe.Sizeof() 只返回数据类型的大小,不管引用数据的大小,单位为Byte
package mainimport ("fmt""unsafe"
)func main() {var a int = 1var b int8 = 2var c int16 = 3var d int32 = 4var e int64 = 5fmt.Println(unsafe.Sizeof(a))fmt.Println(unsafe.Sizeof(b))fmt.Println(unsafe.Sizeof(c))fmt.Println(unsafe.Sizeof(d))fmt.Println(unsafe.Sizeof(e))
}
结论
- int类型的大小为 8 字节
- int8类型大小为 1 字节
- int16类型大小为 2 字节
- int32类型大小为 4 字节
- int64类型大小为 8 字节
官方文档
int is a signed integer type that is at least 32 bits in size. It is a distinct type, however, and not an alias for, say, int32.
意思是 int 是一个至少32位的有符号整数类型。但是,它是一个不同的类型,而不是int32的别名。int 和 int32 是两码事。
uint is a variable sized type, on your 64 bit computer uint is 64 bits wide.
uint 是一种可变大小的类型,在64位计算机上,uint 是64位宽的。uint 和 uint8 等都属于无符号 int 类型。uint 类型长度取决于 CPU,如果是32位CPU就是4个字节,如果是64位就是8个字节。
总结
go语言中的 int 的大小是和操作系统位数相关的,如果是32位操作系统,int 类型的大小就是4字节。如果是64位操作系统,int 类型的大小就是8个字节
Golang: int, int8, int16, int32, int64 和 uint 区别相关推荐
- Golang中int, int8, int16, int32, int64和uint区别
Golang中int, int8, int16, int32, int64和uint区别 前言 测试 结果 结论 总结 前言 在学习go语言时,做算法题会很经常遇到go语言的各种int类型,为什么会有 ...
- Golang中 int int8 int16 int32 int64的区别和取值范围
先说结论吧,方便快速查询验证. 总结 区别 int 类型大小为 8 字节 int8 类型大小为 1 字节 int16 类型大小为 2 字节 int32 类型大小为 4 字节 int64 类型大小为 8 ...
- Golang中uint、int, int8, int16, int32, int64区别
Golang各种数值占据的大小 int类型的大小为 8 字节 int8类型大小为 1 字节 int16类型大小为 2 字节 int32类型大小为 4 字节 int64类型大小为 8 字节 ====== ...
- Golang中int, int8, int16, int32, int64区别
猫哥写Golang过程中,遇到整数常用int,因为可以少打至少一个字符. T_T 一直没有意识到其实各个int还是有区别的,起码是内存空间上的区别. 一段简单粗暴的程序,描述一下区别: package ...
- golang中int int8 int16 int32 int64 uint8 uint16 uint32 uint64 占用字节和取值范围
================================ go grpc-go 相关技术专栏 总入口 go语言基础知识总结.整理.收藏 ========================== ...
- Golang的Int8 Int16 Int32 Int64区别
位(bit):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位 字节(Byte B):计算机中数据的基本单位,每8位组成一个字节 字(Word):两个字节称为一个字.汉字的存储单位都是一 ...
- python中 Int8 Int16 Int32 Int64 float uint8
python中 Int8 Int16 Int32 Int64 float uint8 Int8, 占1个字节. Int16, 占2个字节. Int32, 占4个字节. Int64, 占8个字节. fl ...
- int16, int32, int64等类型区别
int16, int32, int64等类型的区别 Int16 意思是16位整数(16bit integer),相当于short 占2个字节 . Int32 意思是32位整数(32bit intege ...
- int8 int16 int32 int64 float16 float32
int int8取值范围是-128 - 127 Int16 意思是16位整数(16bit integer),相当于short 占2个字节 -32768 ~ 32767 Int32 意思是32位整数(3 ...
最新文章
- PNAS: 儿童生长发育迟缓 = 长期饥饿?
- 角逐同城货运,快狗打车抢跑上市
- 他爬取了B站所有番剧信息,发现了这些……
- 【媒体服务质量监控与QoE】
- 【SDOI2008】仪仗队
- 使用JDBCTemplate实现与Spring结合,方法公用
- [渝粤教育] 昆明理工大学 会计学 参考 资料
- 锤子科技回应天猫店商品全线下架:可去京东购买
- zImage内核镜像解压过程详解
- 【Linux】Vi中的各种命令
- 选择a哪个href以某个字符串结尾
- 模糊算法 matlab,几种模糊控制算法的MATLAB仿真.pdf
- JxBrowser 7 Crack 申请试用教程
- 252个常见英语单词词根
- 【笔记】Polygon mesh processing 读书笔记(3)
- SIFT,SURF,ORB,FAST,BRISK 特征提取算法比较
- 东网科技、Rancher Labs联合发布“容器+虚拟化”双引擎超融合平台HOR
- JAVA生成二维码链接(扫描二维码后进行指定链接跳转)
- 可在线使用的调色板颜料工具
- 小酌重构系列[18]——重命名