Sobes.tech
Junior — Middle

Qual è la funzione dell'operatore `*` nel linguaggio Go, in particolare in relazione ai puntatori?

sobes.tech AI

Risposta dell'AI

Nel linguaggio Go, l'operatore * viene utilizzato per lavorare con i puntatori e svolge due funzioni principali:

  1. Dereferenziare un puntatore — ottenere il valore a cui punta un puntatore.

  2. Dichiarare un puntatore — dichiarando una variabile con *, si indica che è un puntatore a un tipo.

Esempio:

var a int = 10
var p *int = &a  // p è un puntatore a a
fmt.Println(*p)   // stampa 10 — il valore a cui punta p

*p = 20           // cambiamo il valore di a tramite il puntatore
fmt.Println(a)    // stampa 20

In questo modo, * permette di lavorare con indirizzi e valori in memoria, fornendo un controllo a basso livello sui dati.