Next: Exercice
Up: Les pointeurs
Previous: Discussion
Quand un langage offre le passage de paramètre par valeur, il y a deux
possibilités :
- 1.
- soit le paramètre est une constante (donc non modifiable)
- 2.
- soit le paramètre est une variable locale à la procédure. Cette variable
est initialisée lors de l'appel de la procédure avec la valeur du paramètre
effectif.
C'est la seconde solution qui a été retenue par les concepteurs du langage C.
Voyons sur un exemple. Supposons que l'on désire écrire une fonction
sum admettant comme paramètre
n et qui rende la somme des
n
premiers entiers. On peut programmer de la manière suivante :
int sum(int n)
{
int r = 0;
for ( ; n > 0; n--) r = r + n;
return(r);
}
On voit que le paramètre
n est utilisé comme variable locale, et que
dans l'instruction
for, la partie initialisation est vide puisque
n
est initialisée par l'appel de
sum.
Bernard Cassagne
1998-12-09