看到-1与以32位运行的进程一致。
例如,请参阅Go1.1发行说明(已引入
uint64)
x := ^uint32(0) // x is 0xffffffffi := int(x) // i is -1 on 32-bit systems, 0xffffffff on 64-bitfmt.Println(i)
使用
fmt.Printf("%bn",y)可以帮助您查看发生了什么事实证明,OP实战程序([在注释中]确认它最初以32位运行(因此,此答案),但是无论如何,然后意识到
18446744073709551615是
0xffffffffffffffff(-1):请参见ANisus答案;



