为什么我会收到 Go 错误 "panic: strconv: illegal AppendInt/FormatInt base"

Why I do get Go error "panic: strconv: illegal AppendInt/FormatInt base"

我不明白,为什么我在 运行 时间内收到此错误消息。即使是最简单的一行代码,它也会触发: strconv.FormatUint(uint64(123), 64)

我是不是理解错了?代码编译得很好。

编辑:找到了解决方案(正如蒂姆库珀后来指出的那样)。我认为 the examples in the documentation 令人困惑:

s := strconv.FormatBool(true)
s := strconv.FormatFloat(3.1415, 'E', -1, 64)
s := strconv.FormatInt(-42, 16)
s := strconv.FormatUint(42, 16)

当你在例子中只使用base 64和16时,很容易得出错误的结论。但是,既然我知道出了什么问题,错误消息就更有意义了。

不支持 Base 64,如 the documentation 中指定:

func FormatUint(i uint64, base int) string

FormatUint returns the string representation of i in the given base, for 2 <= base <= 36.