Middle
Cos'è un puntatore e quanto spazio di memoria occupa?
sobes.tech AI
Risposta dell'AI
Un puntatore in Go è una variabile che memorizza l'indirizzo di un'altra variabile in memoria. Permette di lavorare direttamente con i dati a quell'indirizzo, utile per ottimizzare e passare grandi strutture senza copiarle.
La dimensione del puntatore dipende dall'architettura del sistema:
- Su sistemi a 32 bit, il puntatore occupa 4 byte.
- Su sistemi a 64 bit, occupa 8 byte.
Esempio di utilizzo di un puntatore in Go:
package main
import "fmt"
func main() {
var a int = 42
var p *int = &a // p è un puntatore a a
fmt.Println("Valore di a:", a)
fmt.Println("Indirizzo di a:", p)
*p = 100 // modifica del valore tramite il puntatore
fmt.Println("Nuovo valore di a:", a)
}