相比于C/C++语言的int类型,GO语言提供了多种int类型可供选择,有int8、int16、int32、int64、int、uint8、uint16、uint32、uint64、uint。文章目录
1.各int类型的取值范围如下
2.关于int类型
3.代码示例
4.总结
1.各int类型的取值范围如下

int8: -128 ~ 127
int16: -32768 ~ 32767
int32: -2147483648 ~ 2147483647
int64: -9223372036854775808 ~ 9223372036854775807
uint8: 0 ~ 255
uint16: 0 ~ 65535
uint32: 0 ~ 4294967295
uint64: 0 ~ 18446744073709551615

2.关于int类型
GO语言中int类型的大小是不确定的,与具体的平台有关系
一般来说,int在32位系统中是4字节,在64位系统中是8字节
使用自动推导类型初始化一个整数,默认为int类型
3.代码示例

package mainimport ("fmt""math""unsafe"
)func main() {// 输出各int类型的取值范围fmt.Println("各int类型的取值范围为:")fmt.Println("int8:", math.MinInt8, "~", math.MaxInt8)fmt.Println("int16:", math.MinInt16, "~", math.MaxInt16)fmt.Println("int32:", math.MinInt32, "~", math.MaxInt32)fmt.Println("int64:", math.MinInt64, "~", math.MaxInt64)fmt.Println()// n是自动推导类型n := 1234567890fmt.Printf("n := 1234567890 的默认类型为:%T\n", n)fmt.Printf("int类型的字节数为:")fmt.Println(unsafe.Sizeof(n))fmt.Printf("\n")// 初始化一个32位整型值var a int32 = 987654321fmt.Println("var a int32 = 987654321")// 输出变量的十六进制形式和十进制值fmt.Printf("int32: 十六进制为0x%x,十进制为%d\n", a, a)// 将a转换为int8类型, 发生数值截断b := int8(a)// 输出变量的十六进制形式和十进制值fmt.Printf("int8: 十六进制为0x%x,十进制为%d\n", b, b)// 将a转换为int16类型, 发生数值截断c := int16(a)// 输出变量的十六进制形式和十进制值fmt.Printf("int16: 十六进制为0x%x,十进制为%d\n", c, c)// 将a转换为int64类型d := int64(a)// 输出变量的十六进制形式和十进制值fmt.Printf("int64: 十六进制为0x%x,十进制为%d\n", d, d)

输出结果:

各int类型的取值范围为:
int8: -128 ~ 127
int16: -32768 ~ 32767
int32: -2147483648 ~ 2147483647
int64: -9223372036854775808 ~ 9223372036854775807n := 1234567890 的默认类型为:int
int类型的字节数为:8var a int32 = 987654321
int32: 十六进制为0x3ade68b1,十进制为987654321
int8: 十六进制为0x-4f,十进制为-79
int16: 十六进制为0x68b1,十进制为26801
int64: 十六进制为0x3ade68b1,十进制为987654321

4.总结
由于GO语言中各int类型的取值范围不同,各int类型间进行数据转换时,会存在数据截断的问题,在使用过程中要引起注意。

Go语言-int类型取值范围相关推荐

  1. int对应的范围c语言,C语言int的取值范围

    C语言int的取值范围在32/64位系统中都是32位,范围为-2147483648~+2147483647,无符号情况下表示为0~4294967295. C/C++编程语言中,int表示整型变量,是一 ...

  2. C语言int的取值范围

    C语言int的取值范围 我们常常看到int取值范围为-32768-32767,实际上int的取值范围依赖于计算机系统,在16位机器中,int占16位,其中一位为符号位,所以取值范围为前面所说的-327 ...

  3. c语言 int的取值范围,C语言int的取值范围 ?

    C语言int的取值范围在32/64位系统中都是32位,范围为-2147483648~+2147483647,无符号情况下表示为0~4294967295. C/C++编程语言中,int表示整型变量,是一 ...

  4. c语言int的取值范围源程序,C语言中int的取值范围是多少

    C语言中int的取值范围是多少 发布时间:2020-07-03 11:35:02 来源:亿速云 阅读:104 作者:Leah C语言中int的取值范围是多少?针对这个问题,这篇文章详细介绍了相对应的分 ...

  5. int类型取值范围的理解

    C语言中,int表示整数类型,占4Byte,也就是32bit.那么为什么int的取值范围是-2147483648~2147483647(即-(2^31) ~ (2^31 -1))呢? 我们知道,这32 ...

  6. c语言 long类型取值范围,详解 IOS下int long longlong的取值范围

    详解 IOS下int long longlong的取值范围 32bit下: unsigned int 0-4294967295 int -2147483648-2147483647 unsigned ...

  7. c语言中int的取值范围_c语言入门(1)

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  8. int和long类型取值范围。 基本数据类型 byte , short , char ,int , long , float ,double,boolean类型取值范围

    int和long类型取值范围. 1. int类型 ---------4字节(32位) ​ ------------------------------------------------------- ...

  9. int、long int 和 long long int 的取值范围

    int.long int 和 long long int 的取值范围 我们在做整型数字运算时,经常会遇到由于数字值极大导致的结果溢出,导致我们得到错误的结果,大多数情况下将变量定义为 long lon ...

最新文章

  1. MarkdownPad2.5 注册码
  2. 华中科技大学计算机学院的班级,华中科技大学计算机学院数据结构(计算机专业)...
  3. php lang无效,详解 Go 中的不可变类型
  4. 用神经网络二分类吸引子与排斥子
  5. debian 访问 windows 共享_【续】windows环境redis未授权利用方式梳理
  6. Android开发笔记(一百四十五)仿应用宝的垃圾清理动画
  7. 《R in Action》读书笔记(3) 数据变换
  8. Pandas系列(九)axis参数理解
  9. matlab z变换 差分,matlab z变换
  10. 仿淘宝头像上传功能(三)——兼容 IE6 浏览器。
  11. 混凝土墙开洞_请教各位大神,混凝土墙体开洞通常有几种方法
  12. 小米平板1(A0101)官方线刷包_救砖包_解账户锁
  13. 【安装】wsl ubuntu18.04安装libc6:i138报错E: Unable to locate package libc6-i386及解决
  14. Python爬取当当网APP数据
  15. 第三章 控制语句<习题3>
  16. 如何在 R 中计算 Cramer V
  17. 报错Can‘t resolve ‘crypto‘ in ‘E:\test\jwt-demo-master\frontend\node_modules\jwa‘
  18. 开源项目学习系列--02.天天酷音TTKMusicplayer
  19. 利用subset()函数提取数据
  20. 15位或18位身份证验证

热门文章

  1. Python算法实战视频课程--二叉树-刘硕-专题视频课程
  2. 技术问题epic无法启动 任务栏不断的闪 打不开
  3. C++ future使用
  4. 荣耀v20会升级到Android10吗,荣耀v20该不该升级到emui10?有什么样的优势?
  5. 【阿旭机器学习实战】【10】朴素贝叶斯模型原理及3种贝叶斯模型对比:高斯分布朴素贝叶斯、多项式分布朴素贝叶斯、伯努利分布朴素贝叶斯
  6. 网名接龙之--绝缘材料
  7. 安卓编译OpenSSL源码
  8. 最新网络黑客免定金_如何保护和保护您的网站免受网络攻击
  9. 2010年5月编程语言的排行指数-Objective-C闯进前十!
  10. linux远程连接注意防火墙