fmt.Printf 适合整数格式化输出,%b/%x 等动词直接转进制;strconv.FormatInt 用于生成字符串,类型安全;strconv.ParseInt 解析进制字符串,需注意 base 和 bitSize;三者定位不同,不可混用。用 fmt.Printf 快速格式化输出,但只适用于整数想把一个整数打印成二进制或十六进制?fmt.Printf 是最轻量、最常用的方式,不用引入额外包。它靠几个动词直接搞定:%b(二进制)、%o(八进制)、%x 或 %X(小写/大写十六进制)。%b 输出纯数字,不带 0b 前缀,也不补零;负数按补码输出(比如 fmt.Printf("%b", -1) 在 64 位系统下打出 64 个 1)要补零到固定宽度,用 %08b(8 位宽,左补 0),注意:这是字符宽度,不是“保证 8 个 bit”,对负数无意义要加 0x 前缀,用 %#x 或 %#X;但 %#b 不合法,Go 不支持自动加 0b传入非整数类型(如 float64、string)会 panic,错误信息类似 bad verb %x for string用 strconv.FormatInt 转成字符串,适合后续处理如果目标不是打印,而是生成字符串用于日志、序列化、拼接或网络传输,strconv.FormatInt 更合适——它返回 string,类型安全,且能处理任意整数大小(只要转成 int64)。必须传 int64 类型,所以常见写法是 strconv.FormatInt(int64(n), 2),别漏了类型转换base 参数只能是 2、8、10、16;传错值(如 3 或 17)不会编译报错,但运行时 panic不支持前缀和补零,想要 0b1010 或 0xff 得手动拼接:"0b" + strconv.FormatInt(n, 2)对无符号整数(如 uint8),需先转为 int64 再调用,不能直接传 uint8(255)用 strconv.ParseInt 解析字符串,注意 base 和 bitSize从配置文件、用户输入或网络收到一串二进制/十六进制字符串(如 "1101"、"ff"、"0o755"),要用 strconv.ParseInt 变回整数。第二个参数 base 指明原字符串的进制:2 表示二进制,8 表示八进制,16 表示十六进制;base = 0 时可自动识别前缀("0x"→16,"0"→8,否则→10)第三个参数 bitSize 是关键:它限制结果类型大小,不是“输入长度”。填 8 就要求结果在 int8 范围内(?128 到 127),超出会返回 error十六进制字符串字母不区分大小写,"FF" 和 "ff" 都合法;但二进制只认 '0' 和 '1',多一个空格或换行就失败常见坑:ParseInt("0xFF", 16, 64) 成功,但 ParseInt("0xFF", 10, 64) 失败——base 错了,不是看字符串里有没有 0x别混淆 fmt 和 strconv 的定位fmt 系列函数本质是「格式化输出」,设计目标是人眼可读;strconv 才是真正做「类型转换」的工具链。混用会导致隐性 bug。 稿定AI 拥有线稿上色优化、图片重绘、人物姿势检测、涂鸦完善等功能
Golang怎么实现进制转换_Golang如何在二进制八进制十六进制之间互相转换【基础】
张小明
前端开发工程师
鸣潮120FPS终极解锁指南:WaveTools工具箱让你的游戏体验丝滑翻倍
鸣潮120FPS终极解锁指南:WaveTools工具箱让你的游戏体验丝滑翻倍 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 还在为《鸣潮》那令人抓狂的60FPS帧率限制而烦恼吗?你的高端显卡明…
WebPShop插件深度解析:如何在Photoshop中高效处理WebP格式图像
WebPShop插件深度解析:如何在Photoshop中高效处理WebP格式图像 【免费下载链接】WebPShop Photoshop plug-in for opening and saving WebP images 项目地址: https://gitcode.com/gh_mirrors/we/WebPShop 你是否曾经在Photoshop中需要处理WebP格式图像&…
专知智库OPC研究院:从OPC到独脚兽——一人公司的全生命周期陪伴
专知智库OPC研究院:从OPC到独脚兽——一人公司的全生命周期陪伴独脚兽不是凭空诞生的物种。在成为独脚兽之前,绝大多数创始人首先是一人公司(OPC)的经营者——他们可能刚刚脱离组织,正在为第一笔订单焦虑;也…
基于Llama3和distilabel构建高质量微调数据集
1. 项目概述:基于Llama3和distilabel构建微调数据集在自然语言处理领域,大语言模型的微调质量直接取决于训练数据的品质。这个项目展示了我如何利用Meta最新开源的Llama3模型与Argilla公司推出的distilabel工具链,构建高质量的指令微调数据集…
如何在PC上免费畅玩Switch游戏:Ryujinx模拟器深度解析与实战指南
如何在PC上免费畅玩Switch游戏:Ryujinx模拟器深度解析与实战指南 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx 你是否梦想着在电脑大屏幕上体验《塞尔达传说:…
全景深度估计技术:DAP模型解析与应用实践
1. 全景深度估计的技术挑战与DAP解决方案在计算机视觉领域,深度估计一直是个既基础又关键的任务。想象一下,如果机器人能像人类一样准确判断周围物体的距离,或者VR设备能实时构建完整的3D环境,这些都需要精准的深度感知能力。传统…