golang:%v,%+v,%#v区别

%v 按默认格式输出,
%+v 在%v的基础上额外输出字段名,
%#v 在%+v的基础上额外输出类型名。

package main

import "fmt"

type T struct{
	a int 
	b float64
}
func test(){
	t:=T{
		a:1,
		b:2.0,
	}
	fmt.Printf("%v\n",t)
	fmt.Printf("%+v\n",t)
	fmt.Printf("%#v\n",t)
}
func main(){
	test()
}

输出:

PS E:\goproject> go run "e:\goproject\go_test1\main.go"
{1 2}
{a:1 b:2}
main.T{a:1, b:2}


 

上一篇:C 程序结构


下一篇:java多线程之ReentrantLock详解