从整数转换为二进制表示

新手上路,请多包涵

有没有人知道 Go 中是否有任何内置功能可以将任何一种数字类型转换为二进制数字形式。

例如,如果 123 是输入,则字符串 "1111011" 将是输出。

原文由 cobie 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 539
2 个回答

strconv 包有 FormatInt ,它接受 int64 并允许您指定基数。

 n := int64(123)

fmt.Println(strconv.FormatInt(n, 2)) // 1111011

演示: http ://play.golang.org/p/leGVAELMhv

http://golang.org/pkg/strconv/#FormatInt

func FormatInt(i int64, base int) string

FormatInt 返回 i 在给定基数中的字符串表示形式,对于 2 <= base <= 36。结果使用小写字母“a”到“z”表示数字值 >= 10。

原文由 I Hate Lazy 发布,翻译遵循 CC BY-SA 3.0 许可协议

另见 fmt 包:

 n := int64(123)
fmt.Printf("%b", n)  // 1111011

原文由 Mark 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题