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

Go Tour 示例:怎么没有溢出?

Go Tour 示例:怎么没有溢出?

Go
慕仙森 2021-06-20 12:17:00
在Go Tour,第 13 页中,提供了以下内容:MaxInt uint64     = 1<<64 - 1当示例运行时,它会正确评估;我似乎无法理解为什么。unit64据我所知,是 Go 中 int 的最大容器。同时,1<<64在表达式(例如 in fmt.Printf(1<<64))中使用时评估为异常- 即它不像在几种编程语言中那样为 0。尽管如此,当在赋值运算符的右侧使用时,它的评估结果很好。我在这里缺少什么?
查看完整描述

1 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

没关系,幻灯片 #15似乎解释了它:它是一个常量,因此“没有限制大小”(无论如何都不是 64 位)。我觉得很奇怪,但可以解释一下。


查看完整回答
反对 回复 2021-06-21
  • 1 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

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