Salut tout le monde
S'il vous plaît je suis nouveau sur le forum.
Je n'ai pas compris la différence entre les paramètres formels d'une procédure (ou d'une fonction) et ses variables, comment faire pour les connaître...
Merci d'avance :roll:
Version imprimable
Salut tout le monde
S'il vous plaît je suis nouveau sur le forum.
Je n'ai pas compris la différence entre les paramètres formels d'une procédure (ou d'une fonction) et ses variables, comment faire pour les connaître...
Merci d'avance :roll:
Grosso modo:
Les paramètres sont les informations qui sont données à une procédure/fonction par le programme appelant. Ces paramètres peuvent données par valeur (une copie d'une variable est temporairement créée) ou par adresse (la variable elle-même est passée).
Les variables d'une procédure/fonction sont des variables locales à cette procédure/fonction. Elles existent temporairement et ne sont destinées que pour le fonctionnement de cette procédure/fonction, la durée de vie de ces variables est égale au temps d'exécution de cette procédure/fonction.
je commence un comprendre maintenant vous pouvez m'expliquée bien la première partie car je suis encore un débutant en pascal :)
- Les variables locales à une procédure sont les variables déclarées à l'intérieur de cette procédure. Celles-ci ne peuvent être utilisées qu' à la l'intérieur de cette procédure. Leurs durées de vie est celle de la procédure.
- Un paramètre passé à une procédure est le moyen de communiquer avec cette procédure, en ce sens qu'on peut lui donner des information (passage par valeur) ou récupérer des informations fournies par la procédure (passage par référence)
Un exemple de programme :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 program variable; var mot, mot_pluriel : String; procedure pluriel(entree_par_valeur : String; var sortie_par_reference : String); var variable_locale : String; // variable visible uniquement a l'interieur Begin variable_locale := entree_par_valeur+'s'; sortie_par_reference := variable_locale; End; Begin mot := 'programme'; // on fournit une information à la procedure : mot // on ressort mot_pluriel qui est cre par la procedure pluriel(mot, mot_pluriel); writeln(mot_pluriel); // affiche => programmes readln; End;