Sobes.tech
Middle

¿Qué es un puntero y cuánto espacio de memoria ocupa?

sobes.tech AI

Respuesta de la IA

Un puntero en Go es una variable que almacena la dirección de otra variable en la memoria. Permite trabajar directamente con los datos en esa dirección, lo cual es útil para optimización y para pasar grandes estructuras sin copiarlas.

El tamaño del puntero depende de la arquitectura del sistema:

  • En sistemas de 32 bits, el puntero ocupa 4 bytes.
  • En sistemas de 64 bits, ocupa 8 bytes.

Ejemplo de uso de puntero en Go:

package main
import "fmt"

func main() {
    var a int = 42
    var p *int = &a // p es un puntero a a
    fmt.Println("Valor de a:", a)
    fmt.Println("Dirección de a:", p)
    *p = 100 // cambio del valor a través del puntero
    fmt.Println("Nuevo valor de a:", a)
}