Go · Intermediário · Português · Técnico
verbo de formatação
Código com porcentagem usado em Printf e Sprintf, como %v, %+v, %#v, %T, %d e %s, que escolhe como o valor é convertido em texto.
Onde usar
No dia a dia, %v imprime o valor padrão, %+v inclui nomes de campos de structs e %T mostra o tipo, o que ajuda muito a depurar.
Em código
u := struct{ Nome string }{"Ana"}
fmt.Printf("%v\n", u) // {Ana}
fmt.Printf("%+v\n", u) // {Nome:Ana}
fmt.Printf("%T\n", u)
// struct { Nome string }Exemplos
Troca o %v por %+v para ver os nomes dos campos.
Usei %T no log para descobrir qual tipo estava chegando.
Cuidado
Passar o verbo errado, como %d para uma string, não quebra a compilação; o go vet avisa e a saída sai marcada com %!d.
Sinônimos
verbo do Printf