Pointeurs C ++ et référence

Pointeurs C ++ et référence
En C ++, le pointeur et la référence sont deux concepts puissants. À l'aide du pointeur et de la variable de référence, nous pouvons facilement accéder facilement à nos variables normales. Maintenant, nous discutons en détail du concept de pointeur et de référence.

Aiguille

Le pointeur est un type spécial de variable. Il stocke l'adresse d'une autre variable. Cela signifie que chaque fois qu'un stockage de variables en mémoire, il obtient une adresse spécifique. Pointer stocke cette adresse de cette variable particulière.

Exemple de programmation 1

#inclure
Utilisation de Namespace Std;
int main()

int x = 15;
int * p; // déclarant un pointeur
p = & x;
couter<< &x << endl ; // address of x ;
couter<< p << endl ; // pointing the address of x ;
couter<< *p << endl ; // Dereferencing of a pointer;
retour 0;

Sortir

Explication
Ici, nous déclarons une variable entière x et à l'intérieur x nous attribuons 15. Maintenant, nous avons déclaré une variable de pointeur de type entier * P.

p = & x;

Ici à l'intérieur de la variable du pointeur P, nous attribuons l'adresse de x. L'adresse de x dépend totalement de notre système d'exploitation.

Si nous imprimons & x, il montre la sortie de l'adresse de la variable x.

Si nous imprimons la variable P, il obtient également la sortie de l'adresse de la variable x.

Mais si nous imprimons le * P, cela déréférences à notre pointeur. Cela signifie qu'il obtient la sortie de la valeur de la variable x.

Exemple de programmation 2

#inclure
Utilisation de Namespace Std;
int main()

float x = 15;
float * p; // déclarant un pointeur
p = & x;
couter<< &x << endl ; // address of x ;
couter<< p << endl ; // pointing the address of x ;
couter<< *p << endl ; // Dereferencing of a pointer;
retour 0;

Sortir

Explication
Si nous prenons la variable de type flotteur x et attribuons une valeur 1.5, alors nous déclarons un pointeur pour maintenir l'adresse de x, nous devons prendre le type de pointeur.

Tout pointeur contient l'adresse de la variable; Les deux ont le même type de données. Sinon, une erreur se produit.

Pointeur arithmétique

En C ++ à l'aide du pointeur, nous avons fait certaines opérations arithmétiques comme l'incrément, la décrémentation, l'addition et la soustraction.

Exemple de programmation 3

#inclure
Utilisation de Namespace Std;
int main()

int x = 15;
int * p = & x;
couter<< p << endl ; // address of x ;
p ++; // incrément de pointer
couter<< p << endl ;
retour 0;

Sortir

Pointeur et tableau

Le tableau prend toujours de la mémoire de manière contiguë. Nous pouvons implémenter un tableau à l'aide de Pointer. Parce que lorsque le pointeur est incrémenté, il pointe toujours vers le bloc suivant de l'adresse de base du tableau. Le pointeur et le tableau ont le même type de données.

Exemple de programmation 4

#inclure
Utilisation de Namespace Std;
int main()

int i;
int arr [] = 5, 10, 15; // déclarant un tableau;
int * p = arr; // initialisation de la valeur du tableau à un pointeur;
couter<< *arr << endl ;
pour (i = 0; i < 3 ; i++)

couter<< *p << endl ;

retour 0;

Sortir

Explication
Nous pouvons accéder à un tableau à un pointeur. Dans cet exemple, nous déclarons simplement un tableau et initialisons certaines valeurs. L'adresse de base du tableau à un pointeur P. Maintenant, nous pouvons imprimer la valeur de chaque élément du tableau via un pointeur. Si nous incrémenons la valeur de PTR, il passe simplement au bloc suivant de l'adresse de base du tableau.

Référence

Sauf la variable et le pointeur normaux, C ++ nous fournit un type spécial de variable appelée variable de référence. Maintenant, nous apprenons la variable de référence.

Caractéristiques de la variable de référence

  1. Avant de déclarer une variable de référence, nous écrivons simplement '&' symbole. Beaucoup d'entre nous ont une idée fausse que «&» est traité comme l'adresse de l'opérateur. Mais en fait, il n'est pas traité comme ça dans les termes de variable de référence.
  2. Lorsque nous déclarons la variable de référence à ce moment-là, l'initialisation doit être effectuée. Sinon, une erreur se produit.
  3. La variable de référence ne peut pas être mise à jour.

Exemple d'une variable de référence

int x = 5;

Si nous voulons garder un autre nom de variable x, nous devons suivre cette procédure.

int & y = a;

Il signifie que la variable de référence est créée uniquement pour référer la variable existante dans le programme. Avec l'aide de la variable de référence, nous accédons à la variable x.

Exemple de programmation 5

#inclure
Utilisation de Namespace Std;
int main()

int x = 15;
int & y = x;
couter<< x << “ “ << y << endl ;
++y;
couter<< x << “ “ << y << endl ;
retour 0;

Sortir

Explication
Ici, nous introduisons une variable de référence y qui fait référence à la variable x par la ligne et y = x. En x, 5 est affecté. Si nous voulons imprimer la variable X et Y, les deux montrent le même résultat 5.

Si nous incrémenons 1 à la valeur de Y et imprimons à la fois la variable x et y, il montre le même résultat 6.

Conclusion

Discutant en détail du concept de pointeur et de référence, nous sommes arrivés à cette conclusion que l'adresse est le concept le plus puissant de C++. À l'aide du pointeur et de la référence, nous pouvons surveiller les variables, le tableau, la fonction, la structure, etc. facilement.