为了账号安全,请及时绑定邮箱和手机立即绑定

在golang中的数字类型之间进行转换

在golang中的数字类型之间进行转换

Go
慕尼黑8549860 2021-05-17 16:13:09
有人可以告诉我go是否支持数字类型的自动转换。现在,我必须手动将所有计算的结果转换为int或int64,并跟踪所使用的数字类型。
查看完整描述

3 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

Go不会自动为您转换数字类型。

根据语言规范:

在表达式或赋值中混合使用不同的数字类型时,需要进行转换。例如,即使int32和int在特定体系结构上可能具有相同的大小,它们也不是同一类型。


查看完整回答
反对 回复 2021-05-24
?
慕沐林林

TA贡献2016条经验 获得超9个赞

Go不支持数字类型的隐式类型转换。

请参阅规格。我认为这是出于安全性和可预测性的原因。我发现的另一件事是有点怪异/有趣的是,您甚至无法隐式地将int转换为int32,这很奇怪,因为两者的大小相同。

//img1.sycdn.imooc.com//60ab625300011e1f06200195.jpg

查看完整回答
反对 回复 2021-05-24
?
MM们

TA贡献1886条经验 获得超2个赞

您必须手动在类型之间进行转换,例如

var b byte = byte(x % 256);


查看完整回答
反对 回复 2021-05-24
  • 3 回答
  • 0 关注
  • 260 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信