通用:
| 表达式 |
描述 |
| %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