L’operatore indirizzo
Fa parte della sezione Fondamenti del percorso GO di Coddy. Lezione 62 di 109.
L’operatore indirizzo di (&) restituisce l’indirizzo di memoria di una variabile. È così che creiamo i puntatori in Go.
Crea una variabile e ottieni il suo indirizzo di memoria:
func main() {
number := 42
addressOfNumber := &number
fmt.Println("Value:", number)
fmt.Println("Address:", addressOfNumber)
}L'output mostra il valore e il suo indirizzo di memoria:
Value: 42
Address: 0xc000018030L'indirizzo (come 0xc000018030) è un numero esadecimale che rappresenta la posizione di memoria in cui è memorizzato il valore. Questo indirizzo sarà diverso ogni volta che esegui il programma.
Sfida
Principiante&) in Go. L'operatore di indirizzo restituisce l'indirizzo di memoria di una variabile, ovvero il punto in cui il valore della variabile è memorizzato nella memoria del computer.Il tuo compito è usare l'operatore di indirizzo per ottenere l'indirizzo di memoria della variabile fornita e memorizzarlo nella variabile puntatore già dichiarata.
Provalo tu
package main
import "fmt"
func main() {
// Questa è la nostra variabile di esempio
name := "Gopher"
// Questa istruzione dichiara una variabile puntatore per memorizzare l'indirizzo di una stringa
var namePointer *string
// TODO: Usa l'operatore di indirizzo (&) per ottenere l'indirizzo di memoria di 'name'
// e memorizzalo nella variabile 'namePointer'
// Stampa il valore a cui punta il puntatore
fmt.Printf("The value at that memory address is: %v\n", *namePointer)
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori di confronto e logici
Operatori di confronto - Parte 1Operatori di confronto - Parte 2Operatore AND logicoOperatore OR logicoOperatore NOT logicoNozioni di base sulla precedenza degli operatoriRiepilogo - Eseguire confronti7Flusso di controllo: cicli
Come funziona il ciclo `for`Ciclo `for` - baseCiclo `for` - solo condizioneLa parola chiave `break`La parola chiave `continue`Cicli annidatiRiepilogo - ripetere le azioni2Variabili e tipi di dati di base
Che cos'è una variabileInferenza del tipo con `:=`Numeri interi (int)Numeri in virgola mobileValori booleaniStringheValori zeroCostantiConvenzioni di denominazioneRiepilogo: variabili e tipi5Input/output di base
Output formattatoVerbi di formattazioneVisualizzazione dei tipiAcquisire input di base dall’utenteRiepilogo - Input e output8Funzioni
Capire le funzioniDichiarare una funzioneChiamare le funzioniParametri delle funzioniRestituire un singolo valoreRestituire più valoriValori restituiti con nomeFondamenti dell'ambito delle funzioniRiepilogo - Creare codice riutilizzabile3Operatori di base
Operatori aritmeticiOperatore di divisioneL'operatore moduloOperatore di assegnazioneOperatori di assegnazione compostaIncremento e decrementoRiepilogo - Calcoli6Flusso di controllo: condizioni
L'istruzione `if`La parola chiave `else`La parola chiave `else if`Ombreggiamento delle variabili in `if`Inizializzare le variabiliL'istruzione `switch``switch` con espressioni`switch` senza espressioneLa parola chiave `fallthrough`Riepilogo: prendere decisioni9Puntatori
Che cos’è un puntatore?Dichiarare variabili puntatoreL’operatore indirizzoDereferenziare i puntatoriUsare i puntatori nelle funzioniPuntatori nilRipasso - Capire i puntatori12Tipi compositi: mappe
Introduzione alle mappeDichiarare i letterali delle mappeCreare mappe con `make`Aggiungere e aggiornare coppie chiave-valoreAccedere ai valori delle mappeVerificare l'esistenza di una chiaveEliminare elementi dalle mappeLunghezza delle mappeIterare sulle mappeRiepilogo - Archiviazione chiave-valoreEsercitati da solo: Compilatore Go online