int使用规则_point是什么意思

int使用规则_point是什么意思先说结论吧,方便快速查询验证。总结区别int类型大小为8字节int8类型大小为1字节int16类型大小为2字节int32类型大小为4字节int64类型大小为8字节go语言中的int的大小是和操作系统位数相关的,如果是32位操作系统,int类型的大小就是4字节;如果是64位操作系统,int类型的大小就是8个字节取值范围int8:-128~127int16:-32768~32767int32:-2147483648~214

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

先说结论吧,方便快速查询验证。

总结

区别

int   类型大小为 8 字节
int8  类型大小为 1 字节
int16 类型大小为 2 字节
int32 类型大小为 4 字节
int64 类型大小为 8 字节

go语言中的int的大小是和操作系统位数相关的,如果是32位操作系统,int类型的大小就是4字节; 如果是64位操作系统,int类型的大小就是8个字节

取值范围

int8:   -128 ~ 127
int16:  -32768 ~ 32767
int32:  -2147483648 ~ 2147483647
int64:  -9223372036854775808 ~ 9223372036854775807

uint8:  0 ~ 255
uint16: 0 ~ 65535
uint32: 0 ~ 4294967295
uint64: 0 ~ 18446744073709551615

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

代码验证

package main
import (
"fmt"
"math"
"unsafe"
)
func main() { 

fmt.Println("各int类型的大小:")
var i1 int = 1
var i2 int8 = 2
var i3 int16 = 3
var i4 int32 = 4
var i5 int64 = 5
var i6 uint64 = 6
fmt.Printf("int : %v\n", unsafe.Sizeof(i1))
fmt.Printf("int8 : %v\n", unsafe.Sizeof(i2))
fmt.Printf("int16 : %v\n", unsafe.Sizeof(i3))
fmt.Printf("int32 : %v\n", unsafe.Sizeof(i4))
fmt.Printf("int64 : %v\n", unsafe.Sizeof(i5))
fmt.Printf("uint64 : %v\n\n", unsafe.Sizeof(i6))
// 输出各int类型的取值范围
fmt.Println("各int类型的取值范围:")
//fmt.Println("int:", math.MinInt, "~", math.MaxInt) 报错,没有 math.MinInt math.MaxInt
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 := 1234567890
fmt.Printf("n := 1234567890 的默认类型为:%T\n", n)
fmt.Printf("int类型的字节数为:%v\n\n", unsafe.Sizeof(n))
// 初始化一个32位整型值
var a int32 = 987654321
fmt.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类型的大小:
int    : 8
int8   : 1
int16  : 2
int32  : 4
int64  : 8
uint64 : 8int类型的取值范围:
int8: -128 ~ 127
int16: -32768 ~ 32767
int32: -2147483648 ~ 2147483647
int64: -9223372036854775808 ~ 9223372036854775807
n := 1234567890 的默认类型为:int
int类型的字节数为:8
var a int32 = 987654321
int32: 十六进制为0x3ade68b1,十进制为987654321
int8:  十六进制为0x-4f,十进制为-79
int16: 十六进制为0x68b1,十进制为26801
int64: 十六进制为0x3ade68b1,十进制为987654321

Go语言-int类型取值范围 https://blog.csdn.net/dshf_1/article/details/105403862

Golang中uint、int, int8, int16, int32, int64区别 https://blog.csdn.net/FromTheWind/article/details/105862844

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170534.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 常用格式转换整理(byte转string, int转string….)

    常用格式转换整理(byte转string, int转string….)1、String和int转换(1)Sting转为intStringstr="123";try{inta=Integer.parseInt(str);}catch(NumberFormatExceptione){e.printStackTrace();}(2)int转为StringStringstr="123";try{…

  • html中div滚动条设置,DIV滚动条属性及样式设置方式「建议收藏」

    html中div滚动条设置,DIV滚动条属性及样式设置方式「建议收藏」这里向大家描述一下DIV滚动条属性及样式设置,所谓DIV滚动条,就是利用DIV标签,在里面嵌入CSS样式表,加入overflow的属性值,这样,当div所规范的区域内的内容达到一定程序时,滚动条就派上用场。DIV滚动条属性及样式设置所谓DIV滚动条,就是利用DIV标签,在里面嵌入CSS样式表,加入overflow的属性值,这样,当div所规范的区域内的内容达到一定程序时,滚动条就派上用场。其功能大…

  • C# WinForm开发系列之如何使用panel控件制作左侧导航菜单

    C# WinForm开发系列之如何使用panel控件制作左侧导航菜单之前需要写一个C#的左侧导航菜单控件,想了许久,最终选择了使用paenl控件来实现这一功能。决定和大家分享一下,初步接触C#,欢迎多多指教,不胜感激!首先,我的思路分为以下几步:一.使用vs编辑工具创建一个导航菜单控件;如图1所示:图1二.在菜单控件上布局你的导航菜单控件的样式;其结构如图2所示,(我是通过5个panel控件和两个label控件组成):

  • 树的先序遍历对应二叉树的_先序遍历输入一个二叉树

    树的先序遍历对应二叉树的_先序遍历输入一个二叉树笔试特别喜欢考这种题。先说一下思路。首先,需要明白前序、中序、后序遍历:①前序:根→左→右②中序:左→根→右③后序:左→右→根仅明白这个是不行的,还需要技巧。对于标题中的问题,我们很容易判断根节点是A,A的右节点是B,A的左边有CDFEGH,如下图:然后,将问题进行分解。去掉了AB结点之后,问题可分解如下:按照同样的套路,我们可以画出子问题的数大大概结构,如下图:与第一步画…

  • 解决方案-vector初始化后存放Mat,出现Mat矩阵数据同变问题

    解决方案-vector初始化后存放Mat,出现Mat矩阵数据同变问题提供解决方案-vector初始化后存放Mat,出现Mat矩阵数据同变问题

  • mysql 10051_Zabix的10051端口无法启动如何解决?

    mysql 10051_Zabix的10051端口无法启动如何解决?启动zabbix是显示启动成功,查看端口,却发现没有10051端口1、查看zabbix的日志[root@bogonldap]#cat/tmp/zabbix_server.log’/var/lib/mysql/mysql.sock'(2)2848:20181204:084007.165databaseisdown:reconnectingin10seconds2848:2018…

    2022年10月24日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号