Conrad
Une variable pointeur permet d'utiliser ce que l'on appelle "l'indirection". Son principal avantage est que si quelque chose change sur le "back end", alors votre code "front end" n'a pas besoin d'être modifié.
Un exemple simple : supposons que vous fassiez partie d'une équipe d'assistance technique qui doit résoudre des problèmes 24 heures sur 24 pour une communauté d'utilisateurs, et que vous deviez donner à cette communauté d'utilisateurs des instructions sur la façon d'obtenir de l'aide chaque fois qu'elle en a besoin. Sans indirection, vous devriez indiquer à l'ensemble de la communauté des utilisateurs le numéro de téléphone de chaque personne du support technique et quand elle est en service.
En utilisant un numéro de téléphone « pointeur » qui pointe vers les différents numéros de téléphone du personnel du support technique au fur et à mesure que leurs équipes changent, vous résolvez deux problèmes :
1. La communauté d'utilisateurs ne doit connaître qu'un seul numéro de téléphone (le numéro général du service d'assistance).
2. Au fur et à mesure que les horaires du personnel de support technique changent (celui-ci tombe malade, etc.), la communauté des utilisateurs n'a pas besoin de connaître les horaires et les modifications apportées à ces horaires, car le numéro de téléphone reste le même, peu importe qui est en service.
En programmation, c'est la même manière : en utilisant une variable de pointeur lorsque vous développez le code, vous faites indirectement référence à un emplacement de quelque chose, mais lorsque le code est exécuté (au moment de l'exécution), cette variable peut alors être pointée vers l'emplacement de ce « quelque chose » lorsque l'emplacement est établi.
Fondamentalement, les variables de pointeur offrent une flexibilité dans une variété de situations, bien que la plupart du temps, les variables de pointeur soient utilisées lors de l'accès à la mémoire, car un programmeur ne sait jamais exactement où se trouve en mémoire une chose particulière (code de programme ou données), puisque son programme doit faire un "malloc" (demande d'allocation de mémoire) du système d'exploitation au moment de l'exécution du programme. Ainsi, la flexibilité d'une variable pointeur permet de positionner le code et les données là où il y a de l'espace disponible.
Veuillez noter que les variables de pointeur peuvent également être utilisées dans de nombreuses autres situations.
J'espère que ça aide.
Jean Mangione