Tema 1.5: Comunicarea prin variabile globale
Executia unui apel de subprogram presupune transmiterea datelor de
prelucrat functiei sau procedurii respective.Dupa executarea ultimei
instructiuni din subprogram,rezultatele produse trebuie intoarse in locul
de apel. Cunoastem deja ca datele de prelucrat si rezultatele produse pot
fi transmise prin parametri.Parametrii formali se specifica in antetul
functiei sau procedurii,iar parametrii actuali- in locul apelului .
In completare la modul de transmitere a datelor prin parametri, limbajul
pascal permite comunicarea prin variavbile globale.
Orice variabila este locala in subprogramul in care a fost declarata. O
variabila este globala relativ la un subprogram atunci cind ea este
declarata in programul sau subprogramul ce il cuprinde fara sa fie
declarata in subprogramul in studiu. Intrucit variabilile globale sint
cunoscute atit in subprogram , cit si in afara lui, ele pot fi folosite pentru
transmiterea datelor de prelucrat si returnarea rezultatelor.
Datele de prelucrat se transmit procedurii P prin variabila
globala a. Rezultatul produs de procedura se returneaza in blocul
de apel prin variabila globala b. Valoarea argumentului functiei
F se transmite prin variabila globala b.Mentionam ca variabila a
este locala in F si nu poate fi folosita pentru transmiterea datelor
in aceasta functie. De obicei, comunicarea prin variabile globale
se utilizeaza in cazurile in care mai multe subprograme
prelucreaza aceleasi date.