Source avec explications sur pointeurs pour debutant

Contenu du snippet

Bonjour à tous.
Cette source est à destination des débutants. Je viens de passer au C++ après des années de prog en VB, et les pointeurs y sont absent. Ce n'est pas de les comprendre qui m'a posé problème, mais de bien les écrires :).

Voila, j'espère que les quelques lignes qui suivent pourront en aider certains.

Source / Exemple :


/* 

Extraits de Cours de c++ (niveau débutant)
< Bien comprendre les pointeurs >
Auteur : cyrianox, 12-2002

Un exemple concret pour comprendre à quoi ça sert :
Imaginons :
int a[1000000000];
Si vous devez passer ce tableau en paramètre à une fonction, vous allez consommer énormément de mémoire
et de temps machine. Un pointeur servira ici à passer en paramètre à la fonction l'adresse mémoire du tableau.
La fonction pourra donc exploiter le tableau sans qu'on ai eu besoin de créer ce tableau dans la portée 
de la fonction. D'ou un gain en efficacité.

Un pointeur se déclare de la manière suivante :
<type de donnée> *<nom de variable>;

'&'   veut dire : "adresse de"

ex:  &j  =  adresse de j

'*'   veut dire : "valeur à l'adresse de"

ex:  *j  =  valeur à l'adresse de j

Ci dessous, un exemple pour comprendre :

  • /
#include <iostream> // nécessaire pour l'affichage sur l'écran using namespace std; // cf. le chapitre sur les espaces de nommage int main(int argc, char* argv[]) { int a[100]; // on déclare le tableau a stockant 1001 entiers (de 0 à 1000) int *j; // on déclare j, pointeur vers des entiers for (int i=0;i<101;i++) { a[i] = i; j = &a[i]; cout << "Adresse memoire : " << j << " stocke la valeur : " << *j << endl; } system("pause"); return 0; }

Conclusion :


La source devrait fonctionner sur tous les compilateurs.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.