打印 – 如何使用fmt在Go中打印出常量uint64?

我试过了:

fmt.Printf(“%d”,math.MaxUint64)

但是我收到以下错误消息:

constant 18446744073709551615 overflows int

我怎样才能解决这个问题?谢谢!

math.MaxUint64是一个常量,而不是int64.尝试改为:
fmt.Printf("%d",uint64(num))

这里的问题是常量是无类型的.常量将根据其使用的上下文采用类型.在这种情况下,它被用作接口{},因此编译器无法知道您要使用的具体类型.对于整数常量,它认为int.由于你的常量溢出一个int,这是一个编译时错误.通过传递uint64(num),您将通知编译器您希望将值视为uint64.

请注意,此特定常量仅适用于uint64,有时适用于uint.它甚至比标准的int64更大.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...