Go 陣列指標(指向陣列的指標)

houyanhua1發表於2019-03-20

 

demo.go(陣列指標):

package main

import "fmt"

func main() {
	a := [5]int{1, 2, 3, 4, 5}
	p := &a   // p陣列指標(指向陣列的指標)
	fmt.Println(*p)  // [1 2 3 4 5]
	fmt.Println((*p)[0])  // 1    *p[0]的寫法是錯誤的,[0]的優先順序大於*
	fmt.Println(p[0])  // 1   (*p)[0]可以簡寫成p[0]  (如果是切片指標,則不能這樣簡寫)

	fmt.Println(len(*p))  // 5
	fmt.Println(len(p))  // 5   len(p)和len(*p)相同,都表示指標指向的陣列的長度。 (如果是切片指標,則只能使用len(*p))
	// 結構體的指標p  (*p).成員名 可以簡寫成 p.成員名
}

 

 

相關文章