Рубрики

Как найти емкость указателя в Голанге?

Указатели на языке программирования Go или Golang — это переменная, которая используется для хранения адреса памяти другой переменной. Указатели на Голанге также называются специальными переменными. Переменные используются для хранения некоторых данных по определенному адресу памяти в системе. Адрес памяти всегда находится в шестнадцатеричном формате (начиная с 0x, например, 0xFFAAF и т. Д.).
В указателях вы можете определить емкость указателя с помощью функции cap () . Эта функция является встроенной функцией, возвращающей емкость указателя на массив. В языке Go емкость определяет максимальное количество элементов, хранящихся в указателе на массив. Эта функция определяется встроенной функцией.

Синтаксис:

func cap(l Type) int

Здесь тип l является указателем. Давайте обсудим эту концепцию с помощью примеров:

Пример:

// Перейти к программе, чтобы проиллюстрировать, как найти
// емкость указателя на массив
package main

  
import (

    "fmt"

)

  
// Основная функция
func main() {

  

    // Создание и инициализация

    // указатель на массив

    // Используем ключевое слово var

    var ptr1 [7]*int

    var ptr2 [5]*string

    var ptr3 [8]*float64

  

    // Находим емкость

    // указатель на массив

    // Использование функции cap

    fmt.Println("Capacity of ptr1: ", cap(ptr1))

    fmt.Println("Capacity of ptr2: ", cap(ptr2))

    fmt.Println("Capacity of ptr3: ", cap(ptr3))

  
}

Выход:

Capacity of ptr1 : 7
Capacity of ptr2 : 5
Capacity of ptr3 : 8

Пример 2:

// Перейти к программе, чтобы проиллюстрировать, как найти
// емкость указателя на массив
package main

  
import (

    "fmt"

)

  
// Основная функция
func main() {

  

    // Создание массива

    arr := [8]int{200, 300, 400,

       500, 600, 700, 100, 200}

      

    var x int

  

    // Создание указателя

    var p [5]*int

  

    // Назначаем адрес

    for x = 0; x < len(p); x++ {

        p[x] = &arr[x]

    }

  

    // Отображение результата

    for x = 0; x < len(p); x++ {

      

        fmt.Printf("Value of p[%d] = %d\n",

                                 x, *p[x])

    }

  

    // Находим емкость

    // используя функцию cap ()

    fmt.Println("Capacity of arr: ", cap(arr))

    fmt.Println("Capacity of p: ", cap(p))

}

Выход:

Value of p[0] = 200
Value of p[1] = 300
Value of p[2] = 400
Value of p[3] = 500
Value of p[4] = 600
Capacity of arr:  8
Capacity of p:  5

Рекомендуемые посты:

Как найти емкость указателя в Голанге?

0.00 (0%) 0 votes