Como imprimir a fatia de ponteiros para obter os valores em vez de seus endereços sem iteração em moviment

Esta saída é necessária para fins de depuração. Para obter o valor real da fatia de ponteiros, toda vez que uma iteração é necessári

Existe alguma maneira, podemos ter diretamente o valor em vez do endereço de cada item presente na fatia usando o simples fmt.printf ()?

Aqui está um trecho de código:https: //play.golang.org/p/bQ5vWTlKZm

package main

import (
    "fmt"
)

type user struct {
    userID int
    name   string
    email  string
}

func main() {
    var users []*user
    addUsers(users)
}

func addUsers(users []*user) {
    users = append(users, &user{userID: 1, name: "cooluser1", email: "[email protected]"})
    users = append(users, &user{userID: 2, name: "cooluser2", email: "[email protected]"})
    printUsers(users)
    printEachUser(users)

}

func printUsers(users []*user) {
    fmt.Printf("users at slice %v \n", users)
}

func printEachUser(users []*user) {
    for index, u := range users {
        fmt.Printf("user at user[%d] is : %v \n", index, *u)
    }
}

No código acima, se estou imprimindo a fatia diretamente por fmt.printf, recebo apenas o endereço dos valores em vez do próprio valor rea

output:users at slice [0x442260 0x442280]

Para ler sempre os valores, tenho que chamarfunc gostarprintEachUser para iterar a fatia e obter o valor apropriad

output:user at user[0] is : {1 cooluser1 [email protected]} user at user[1] is : {2 cooluser2 [email protected]}

Existe alguma maneira, podemos ler os valores dentro da fatia de ponteiros usandofmt.printf e obter valor diretamente como abaixo?

users at slice [&{1 cooluser1 [email protected]} , &{2 cooluser2 [email protected]}]

questionAnswers(3)

yourAnswerToTheQuestion