Menu
Coddy logo textTech

L'opérateur d'adresse

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 62 sur 109.

L'opérateur d'adresse (&) récupère l'adresse mémoire d'une variable. C'est ainsi que nous créons des pointeurs en Go.

Créez une variable et obtenez son adresse mémoire :

func main() {
    number := 42
    addressOfNumber := &number
    
    fmt.Println("Value:", number)
    fmt.Println("Address:", addressOfNumber)
}

La sortie affiche la valeur et son adresse mémoire :

Value: 42
Address: 0xc000018030

L'adresse (comme 0xc000018030) est un nombre hexadécimal représentant l'emplacement mémoire où la valeur est stockée. Cette adresse sera différente à chaque fois que vous exécutez le programme.

challenge icon

Défi

Débutant
Dans ce défi, vous allez vous entraîner à utiliser l'opérateur d'adresse (&) en Go. L'opérateur d'adresse renvoie l'adresse mémoire d'une variable, qui est l'endroit où la valeur de la variable est stockée dans la mémoire de l'ordinateur.

Votre tâche consiste à utiliser l'opérateur d'adresse pour obtenir l'adresse mémoire de la variable fournie et la stocker dans la variable pointeur déjà déclarée.

Aide-mémoire

L'opérateur d'adresse (&) récupère l'adresse mémoire d'une variable et est utilisé pour créer des pointeurs en Go.

number := 42
addressOfNumber := &number

fmt.Println("Value:", number)
fmt.Println("Address:", addressOfNumber)

L'adresse est affichée sous la forme d'un nombre hexadécimal (comme 0xc000018030) représentant l'emplacement mémoire où la valeur est stockée. Cette adresse sera différente à chaque exécution du programme.

Essayez vous-même

package main

import "fmt"

func main() {
	// Ceci est notre variable d'exemple
	name := "Gopher"
	
	// Ceci déclare une variable pointeur pour stocker l'adresse d'une chaîne
	var namePointer *string
	
	// TODO : Utilisez l'opérateur d'adresse (&) pour obtenir l'adresse mémoire de 'name'
	// et stockez-la dans la variable 'namePointer'
	
	// Affiche la valeur vers laquelle le pointeur pointe
	fmt.Printf("The value at that memory address is: %v\n", *namePointer)
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux