写点什么

2022-10-04:以下 go 语言代码输出什么?A:{123} main.T{x:123} B:{123} T{x:123} C:boo boo D:boo main.T{x:123}。 packag

  • 2022 年 10 月 04 日
    北京
  • 本文字数:230 字

    阅读完需:约 1 分钟

2022-10-04:以下go语言代码输出什么?A:{123} main.T{x:123} B:{123} T{x:123} C:boo boo D:boo main.T{x:123}。 packag

2022-10-04:以下 go 语言代码输出什么?A:{123} main.T{x:123} B:{123} T{x:123} C:boo boo D:boo main.T{x:123}。


package main
import "fmt"
type T struct { x int}
func (t T) String() string { return "boo" }
func main() { t := T{123} fmt.Printf("%v\n", t) fmt.Printf("%#v\n", t)}
复制代码


答案选 D。%v 按默认格式输出。%+v 在 %v 的基础上额外输出字段名。%#v 在 %+v 的基础上额外输出类型名。%v 和 %+v 直接输出 String 方法,%#v 按展开输出。这道题没啥诀窍,只能硬记住。



发布于: 刚刚阅读数: 5
用户头像

还未添加个人签名 2021.02.15 加入

还未添加个人简介

评论

发布
暂无评论
2022-10-04:以下go语言代码输出什么?A:{123} main.T{x:123} B:{123} T{x:123} C:boo boo D:boo main.T{x:123}。 packag_golang_福大大架构师每日一题_InfoQ写作社区