在指針中,您可以借助len()函數(shù)找到指針的長度。此函數(shù)是內(nèi)置函數(shù),即使指定的指針為nil,也會將指向數(shù)組的指針中存在的元素總數(shù)返回。此函數(shù)在內(nèi)置中定義。
語法:
func len(l Type) int
在這里,l的類型是一個指針。讓我們借助給定的示例來討論這個概念:
package main import ( "fmt" ) func main() { //創(chuàng)建和初始化 //指向數(shù)組的指針 //使用var關鍵字 var ptr1 [6]*int var ptr2 [3]*string var ptr3 [4]*float64 //查找的長度 //指向數(shù)組的指針 //使用len函數(shù) fmt.Println("ptr1的長度: ", len(ptr1)) fmt.Println("ptr2的長度: ", len(ptr2)) fmt.Println("ptr3的長度: ", len(ptr3)) }
輸出:
ptr1的長度: 6 ptr2的長度: 3 ptr3的長度: 4
指向數(shù)組的指針的長度示例2:
//指向數(shù)組的指針的長度 package main import ( "fmt" ) func main() { arr := [6]int{200, 300,400, 500, 600, 700} var x int //創(chuàng)建指針 var p [4]*int //分配地址 for x = 0; x < len(p); x++ { p[x] = &arr[x] } //顯示結果 for x = 0; x < len(p); x++ { fmt.Printf(" p[%d] 的值 = %d\n", x, *p[x]) } // 使用 len() 函數(shù)查找長度 fmt.Println("arr長度: ", len(arr)) fmt.Println("p長度: ", len(p)) }
輸出:
p[0] 的值 = 200 p[1] 的值 = 300 p[2] 的值 = 400 p[3] 的值 = 500 arr長度: 6 p長度: 4