ポインタ
値渡し、ポインタ渡し、参照渡しの違いについて 基本こちらの記事で理解 [参照リンク](https://qiita.com/lon9/items/e70e3b453cb485858062)
自分なりの整理
# このポインタ型の関数は
# アドレス値を受け取る
# 自身のアドレス値も別に持ってる("&"でアドレス確認可)
# 受け取ったアドレス値にあるデータにアクセス("*")
func pointer(i *int){
fmt.Println("値(受け取ったアドレス)=メイン(アドレス)が入る: ", i)
fmt.Println("自身のアドレス: ", &i)
fmt.Println("値(受け取ったアドレス)のデータにアクセス: ", *i)
}
# メイン
func main() {
i := 10
fmt.Println("メイン(値): ", i)
fmt.Println("メイン(アドレス): ", &i)
# ポインタ型の関数にはアドレスを渡す
pointer(&i)
}
結果
メイン(値): 10
メイン(アドレス): 0xc00009c008
値(受け取ったアドレス)=メイン(アドレス)が入る: 0xc00009c008
自身のアドレス: 0xc000098020
値(受け取ったアドレス)のデータにアクセス: 10