ZBLOG

golang %v %+v %#v之间有啥区别

在Golang中,%v%+v%#v是格式化字符串中用于打印变量的占位符。它们的区别如下:

  • %v: 默认格式化输出,根据变量的类型选择合适的输出方式。
  • %+v: 在默认格式化基础上,对结构体(struct)会输出字段名。
  • %#v: 打印变量的 Go 语法表示,包括类型信息。

举例说明:

type Person struct {
    Name string
    Age  int
}

func main() {
    p := Person{Name: "Alice", Age: 25}
    
    fmt.Printf("%v\n", p)   // 输出:{Alice 25}
    fmt.Printf("%+v\n", p)  // 输出:{Name:Alice Age:25}
    fmt.Printf("%#v\n", p)  // 输出:main.Person{Name:"Alice", Age:25}
}

使用不同的占位符可以灵活地控制输出形式以满足不同需求。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=7640

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?