Opérateur de déréférencement
Fait partie de la section Logique et Flux du Journey C++ de Coddy — leçon 3 sur 56.
Maintenant que vous pouvez obtenir un pointer vers une variable, vous devez apprendre à accéder et modifier la valeur à cette address mémoire. C'est là que l'opérateur de dereference (Vous pouvez également utiliser l'opérateur de déréférencement pour modifier la variable d'origine via le pointeur. Lorsque vous attribuez une nouvelle valeur à Cet accès indirect est ce qui rend les pointeurs si puissants - vous pouvez lire et modifier des variables de n'importe où dans votre programme tant que vous avez un pointeur vers elles.
*) becomes essentiel.L'opérateur de déréférencement * est utilisé pour accéder à la valeur stockée à l'adresse mémoire vers laquelle un pointeur pointe. Lorsque vous placez * devant une variable pointeur, il "suit" l'adresse et vous donne la valeur réelle qui y est stockée.N'oubliez pas que l'opérateur address-of (&) est utilisé pour obtenir l'address mémoire d'une variable, tandis que l'opérateur dereference (*) est utilisé pour accéder à la valeur à cette address.int number = 42;
int* ptr = &number; // ptr stocke l'adresse de number
int value = *ptr; // value contient maintenant 42*ptr, vous modifiez en réalité la valeur stockée à cet emplacement mémoire :*ptr = 100; // Modifie number à 100
// number vaut maintenant 100, même si on l'a modifié via ptrDéfi
FacileCréez un programme qui démontre l'utilisation de l'opérateur de déréférencement en modifiant la valeur d'une variable à travers un pointeur.
L'entrée suivante sera fournie :
- Un entier représentant la valeur initiale d'une variable
- Un entier représentant la nouvelle valeur à attribuer via le pointeur
Votre programme doit :
- Déclarer une variable entière nommée
temperatureet l'initialiser avec la première valeur d'entrée - Créer un pointeur nommé
tempPtrqui pointe vers la variabletemperature - Afficher la valeur d'origine en déréférençant le pointeur
- Utiliser l'opérateur de déréférencement pour modifier la valeur de
temperatureavec la deuxième valeur d'entrée à travers le pointeur - Afficher la nouvelle valeur en déréférençant à nouveau le pointeur
Utilisez exactement le format de sortie suivant :
Original value: [original value]
New value: [new value]Essayez vous-même
#include <iostream>
using namespace std;
int main() {
// Lire les valeurs d'entrée
int initialValue, newValue;
cin >> initialValue;
cin >> newValue;
// TODO: Écrivez votre code ci-dessous
// 1. Déclarez la variable temperature et initialisez-la avec initialValue
// 2. Créez le pointeur tempPtr pointant vers temperature
// 3. Print original value using pointer dereference
// 4. Modifiez la valeur de temperature via le pointeur en utilisant newValue
// 5. Affichez la nouvelle valeur en utilisant le déréférencement du pointeur
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique et Flux
1Pointeurs et mémoire
Qu'est-ce qu'un pointeur ?Opérateur d'adresseOpérateur de déréférencementPointeurs nulsPointeurs et tableauxMémoire dynamique avec 'new'Libérer la mémoire avec 'delete'Récapitulatif - Pratique des pointeurs2Vecteurs (Tableaux dynamiques)
Introduction à std::vectorCréer un vecteurAjouter des élémentsAccéder aux élémentsTaille d'un vecteurItérer avec une boucle ForBoucle For basée sur l'intervalleSupprimer des élémentsRécapitulatif - Opérations sur les vecteurs3Projet : Outil de liste de tâches
Présentation du projetAjouter une tâche