fmt是Go语言内置的基础格式化工具,提供Print、Println、Printf三种输出方式,支持%v、%+v、%#v等格式动词调试,需注意类型匹配与nil安全,并可通过Stringer接口和调试开关提升可维护性。

fmt 是 Go 语言最基础、最常用的输出和格式化工具,不需要额外依赖,开箱即用。 它不只用来“打印日志”,更是调试、数据检查、用户交互和简单文本生成的核心手段。掌握它的常见用法和易错细节,能让你写得更快、查得更准、代码更健壮。
这三个函数常被混用,但行为差异明显:
fmt.Print("hello"); fmt.Print("world") 输出 helloworld
fmt.Println("hello", "world") 输出 hello world\n
fmt.Printf("name=%s, age=%d", name, age)
格式动词是 Printf 系列的灵魂。调试时这几个最实用:
{Name:"Alice" Age:30} → {Name:"Alice" Age:30} 变成 {Name:"Alice" Age:30}(字段名可见)[]int{1,2,3} 会输出 []int{1, 2, 3}
fmt 函数不会编译报错,但运行时容易 panic:
立即学习“go语言免费学习笔记(深入)”;
fmt.Printf("%d", "hello")
if s != nil { fmt.Printf("s=%s", string(*s)) },或用 %#v 更稳妥让自定义类型输出更清晰:
String() string 方法,所有 fmt 输出都会自动调用它。适合隐藏敏感字段或美化展示const debug = true,然后 if debug { fmt.Printf("DEBUG: %+v\n", x) }
fmt.Sprintf 构造字符串而非直接打印,便于组合、测试或按需输出基本上就这些。fmt 不复杂但容易忽略细节,用熟了,一行 Printf 往往比打断点还快。
以上就是如何在Golang中使用fmt打印信息_Golang fmt输出与调试技巧的详细内容,更多请关注php中文网其它相关文章!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号