Next: Définition de procédure
Up: Sous-programmes (fonctions et procédures)
Previous: Les procédures
Nous pouvons logiquement
distinguer trois genres de paramètres :
- les paramètres d'entrée, qui représentent des valeurs
nécessaires au calcul effectué par la procédure,
- les paramètres de sortie, qui désignent les variables
où devront être rangées les résultats du calcul, et enfin
- les paramètres mixtes, qui désignent des variables dans
lesquelles se trouvent initialement
des données nécessaires au calcul, et dont
le contenu modifié par le calcul constituera un résultat.
En fait, C++ distingue seulement deux modes de transmission de paramètres :
- les paramètres passés par valeur, qui conviennent
aux paramètres d'entrée. Pour ces paramètres,
leur valeur est recopiée temporairement
dans une variable temporaire qui n'est accessible que
durant l'exécution du sous-programme ;
- les paramètres passés par référence
qui conviennent à la fois aux paramètres de sortie ou mixtes.
Pour ces paramètres, c'est leur adresse en mémoire
qui est rendue accessible au sous-programme,
ce qui lui permet d'y lire et d'y écrire des informations.
Note : le mode de passage de paramètre par référence est
spécifique au langage C++, et n'existe pas en C (sauf implicitement pour
les données de type tableau, comme nous le verrons plus loin).
Pour ``simuler'' en C un
passage de paramètre par référence,
il faudra utiliser les pointeurs,
notion qui ne fait pas partie de ce cours.
Pour les fonctions, nous n'avons envisagé que des paramètres d'entrée,
passés par valeur.
Pour indiquer qu'un paramètre doit être passé par référence, il faut
faire précéder son nom du caractère &
. Par exemple :
Mais attention : si une procédure possède un paramètre passé par
référence, il est obligatoire d'utiliser une variable pour ce paramètre
lors de l'appel :
Michel COUPRIE
Thu Sep 12 14:57:14 METDST 1996