Qu'est-ce que l'adresse mémoire en C++ et comment la trouver ?

Qu Est Ce Que L Adresse Memoire En C Et Comment La Trouver



En C++, une adresse de la mémoire est l'emplacement d'une variable dans la RAM où les données sont stockées. La RAM (Random Access Memory) est une sorte de mémoire informatique qui peut être lue et modifiée dans n'importe quel ordre et est fréquemment utilisée pour stocker des données d'exploitation et des codes machine. Dans nos programmes, chaque variable est stockée dans la RAM et prend de la place en mémoire. Ces variables ont un emplacement de mémoire spécifique, et chacune d'elles a une adresse qui peut être récupérée via le opérateur esperluette (&) . Cet opérateur représente l'adresse mémoire d'une variable et est utile pour accéder et manipuler les données stockées à cet emplacement.

Cet article fournit un guide pour trouver l'adresse mémoire d'une variable en C++.

Comment déterminer l'adresse mémoire d'une variable en C++

En C++, il existe deux méthodes pour déterminer l'adresse mémoire d'une variable :







Méthode 1 : Trouver l'adresse mémoire de la variable à l'aide de l'« adresse de » et de l'opérateur

Lorsque nous devons déterminer l'adresse mémoire d'une variable, nous pouvons utiliser le 'adresse de l'opérateur' (&) , qui renvoie l'adresse de la variable. Pour afficher l'adresse d'une variable, utilisez '&' avec le nom de la variable.



Prenons un exemple de programme pour le démontrer :



#include

en utilisant l'espace de noms std ;

entier principal ( )

{

entier num1 ;

flotter num2 ;

chaîne de caractères ;

écoute << 'Veuillez entrer une valeur entière pour trouver son adresse mémoire : ' ;

alimentaire >> num1 ;

écoute << 'Le numéro saisi est : ' << num1 << fin ;

écoute << 'Adresse de ' << num1 << ' est: ' <<& num1 << fin ;

écoute << 'Veuillez entrer une valeur décimale pour trouver son adresse mémoire : ' ;

alimentaire >> num2 ;

écoute << 'Le numéro saisi est :' << num2 << fin ;

écoute << 'Adresse de ' << num2 << ' est :' <<& num2 << fin ;

écoute << 'Veuillez entrer une chaîne pour trouver son adresse mémoire : ' ;

alimentaire >> chaîne ;

pour ( entier je = 0 ; je < str. longueur ( ) ; ++ je )

écoute << 'Adresse de ' << chaîne [ je ] << ' est :' << ( annuler * ) & chaîne [ je ] << fin ;

retour 0 ;

}

Nos étiquettes de variable dans le programme ci-dessus sont num1, num2 et str, avec des types de données int, float et string, respectivement. L'opérateur '&' est utilisé avec le nom de la variable pour trouver son adresse mémoire. Il convient de noter que la sortie qui fournit l'adresse de la variable est un nombre généré de manière aléatoire.





Méthode 2 : Trouver l'adresse mémoire d'une variable à l'aide d'un pointeur

En C++, les adresses de variables peuvent également être obtenues à l'aide de pointeurs. Une variable qui contient l'adresse d'une autre variable est appelée pointeur. Un pointeur sert comme n'importe quelle autre variable qui doit être spécifiée avant de pouvoir être utilisée. Un pointeur est défini en C++ avec la '*' opérateur, parfois appelé opérateur astérisque.



Regardons un exemple de programme pour trouver l'adresse mémoire à l'aide du pointeur :

#include

#include

en utilisant l'espace de noms std ;

entier principal ( ) {

entier num1 ;

entier * ptr_num1 = & num1 ;

flotter num2 ;

flotter * ptr_num2 = & num2 ;

chaîne de caractères ;

écoute << 'Veuillez entrer une valeur entière pour trouver son adresse mémoire : ' ;

alimentaire >> num1 ;

écoute << 'Le numéro saisi est : ' << num1 << fin ;

écoute << 'Adresse de ' << num1 << ' est: ' << ptr_num1 << fin ;

écoute << 'Veuillez entrer une valeur décimale pour trouver son adresse mémoire : ' ;

alimentaire >> num2 ;

écoute << 'Le numéro saisi est : ' << num2 << fin ;

écoute << 'Adresse de ' << num2 << ' est: ' << ptr_num2 << fin ;

écoute << 'Veuillez entrer une chaîne pour trouver son adresse mémoire : ' ;

alimentaire >> chaîne ;

pour ( entier je = 0 ; je < str. longueur ( ) ; je ++ ) {

écoute << 'Adresse de ' << chaîne [ je ] << ' est: ' << ( annuler * ) & chaîne [ je ] << fin ;

}

retour 0 ;

}

Les étiquettes de variable dans ce programme sont num1, num2 et str, avec des types de données int, float et string, respectivement. L'adresse de la variable est déterminée à l'aide du pointeur avec le nom de la variable. Il convient de noter que la sortie qui fournit l'adresse de la variable est un nombre généré de manière aléatoire.

Conclusion

Lorsque nous déclarons une variable de n'importe quel type de données en C++, un emplacement mémoire lui est attribué par le système d'exploitation. Cet emplacement mémoire est un nombre arbitraire qui ne peut pas être négatif et est connu comme l'adresse de la variable. Connaître l'adresse mémoire d'une variable peut être utile dans certains scénarios de programmation. Dans cet article, nous avons illustré deux méthodes, la adresse de l'opérateur(&) et variables de pointeur , pour déterminer l'adresse mémoire d'une variable en C++ avec des exemples simples.