Golang 菜鳥教程

Golang 控制語句

Golang 函數(shù) & 方法

Golang 結(jié)構(gòu)體

Golang 切片 & 數(shù)組

Golang 字符串(String)

Golang 指針

Golang 接口

Golang 并發(fā)

Golang 異常(Error)

Golang 其他雜項(xiàng)

Go 語言指針容量

在指針中,可以使用cap()函數(shù)來查找指針的容量。這個(gè)函數(shù)是一個(gè)內(nèi)置函數(shù),返回指向數(shù)組的指針的容量。在Go語言中,容量定義了存儲(chǔ)在指向數(shù)組的指針中的最大元素?cái)?shù)。此函數(shù)在內(nèi)置中定義。

語法:

func cap(l Type) int

在這里,l的類型是一個(gè)指針。讓我們借助示例來討論這個(gè)概念:

// Go程序來說明如何查找
//指向數(shù)組的指針的容量
package main

import (
    "fmt"
)

func main() {

    //創(chuàng)建和初始化
    //指向數(shù)組的指針
    //使用var關(guān)鍵字
    var ptr1 [7]*int
    var ptr2 [5]*string
    var ptr3 [8]*float64

    //查找容量
    //指向數(shù)組的指針
    //使用cap()函數(shù)
    fmt.Println("ptr1 容量: ", cap(ptr1))
    fmt.Println("ptr2 容量: ", cap(ptr2))
    fmt.Println("ptr3 容量: ", cap(ptr3))
}

輸出:

ptr1 容量:  7
ptr2 容量:  5
ptr3 容量:  8

Go獲取數(shù)組指針的容量的示例2:

package main

import (
    "fmt"
)

func main() {

    //創(chuàng)建數(shù)組
    arr := [8]int{200, 300, 400, 500, 600, 700, 100, 200}

    var x int

    //創(chuàng)建指針
    var p [5]*int

    //分配地址
    for x = 0; x < len(p); x++ {
        p[x] = &arr[x]
    }

    //顯示結(jié)果
    for x = 0; x < len(p); x++ {

        fmt.Printf("p[%d] 的值= %d\n",x, *p[x])
    }

    // 使用 cap() 函數(shù)查找容量
    fmt.Println("arr的容量: ", cap(arr))
    fmt.Println("p的容量: ", cap(p))
}

輸出:

p[0] 的值= 200
p[1] 的值= 300
p[2] 的值= 400
p[3] 的值= 500
p[4] 的值= 600
arr的容量:  8
p的容量:  5
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清