通用:
表达式 |
描述 |
%v |
值的默认格式表示 |
%+v |
类似%v,但输出结构体时会添加字段名 |
%#v |
值的Go语法表示 |
%T |
值的类型的Go语法表示 |
%% |
百分号 |
布尔值:
整数:
表达式 |
描述 |
%b |
表示为二进制 |
%c |
该值对应的unicode码值 |
%d |
表示为十进制 |
%o |
表示为八进制 |
%q |
该值对应的单引号括起来的go语法字符字面值,必要时会采用安全的转义表示 |
%x |
表示为十六进制,使用a-f |
%X |
表示为十六进制,使用A-F |
%U |
表示为Unicode格式:U+1234,等价于”U+%04X” |
浮点数与复数的两个组分:
表达式 |
描述 |
%b |
无小数部分、二进制指数的科学计数法,如-123456p-78;参见strconv.FormatFloat |
%e |
科学计数法,如-1234.456e+78 |
%E |
科学计数法,如-1234.456E+78 |
%f |
有小数部分但无指数部分,如123.456 |
%F |
等价于%f |
%g |
根据实际情况采用%e或%f格式(以获得更简洁、准确的输出) |
%G |
根据实际情况采用%E或%F格式(以获得更简洁、准确的输出) |
字符串和[]byte:
表达式 |
描述 |
%s |
直接输出字符串或者[]byte |
%q |
该值对应的双引号括起来的go语法字符串字面值,必要时会采用安全的转义表示 |
%x |
每个字节用两字符十六进制数表示(使用a-f) |
%X |
每个字节用两字符十六进制数表示(使用A-F) |
指针:
表达式 |
描述 |
%p |
表示为十六进制,并加上前导的0x |
转自:https://www.jianshu.com/p/e74ef1bf8d5c