subprograme

7
SUBPROGRAME Definiţie, utilitate Clasificare - după numărul de valori returnate: funcţii sau proceduri - după poziţia faţă de apelator: interne sau externe - după aria de utilizare: standard sau utilizator

Upload: eldon

Post on 23-Feb-2016

53 views

Category:

Documents


0 download

DESCRIPTION

SUBPROGRAME. Defini ţ ie , utilitate Clasificare - dup ă num ă rul de valori returnate : func ţ ii sau proceduri - dup ă pozi ţ ia fa ţă de apelator : interne sau externe - dup ă aria de utilizare : standard sau utilizator. Construc ţ ia subprogramelor. Antet. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SUBPROGRAME

SUBPROGRAME• Definiţie, utilitate• Clasificare

- după numărul de valori returnate:

funcţii sau proceduri

- după poziţia faţă de apelator:

interne sau externe

- după aria de utilizare:

standard sau utilizator

Page 2: SUBPROGRAME

Construcţia subprogramelor

Antet

tip-subprogram identificator-subprogram (listă parametri formali)

Parte de declaraţii

Parte de instrucţiuni

Corp

Parametrii formali: de intrare și de ieșire

Page 3: SUBPROGRAME

Apelul subprogramelor

Program principal

Parte de declaraţii

Parte de execuţie

……….……….

Subprogram

Parte de declaraţii

Parte de execuţie

……….……….

Transfer al controlului execuţiei

Transfer de date

Page 4: SUBPROGRAME

Apelul subprogramelor

identificator-funcţie (listă parametri reali)

identificator-procedură (listă parametri reali)

Transferul datelor între apelator și apelat

Transferul datelor prin parametri: prin valoare prin adresă

Transferul datelor prin variabile globale

Page 5: SUBPROGRAME

Structura stivei la apelul subprogramelor

Apelator A………………...

Apel subprogram S…………………

Adresa de revenire în apelatorul A

Parametrii subprogramului S (adrese sau replici)

Variabile locale subprogramului S

STIVA

push pop

1

3

2

3

1

2

Page 6: SUBPROGRAME

Apelare recursivă:

autoapelare

recursivitate mutuală: utilizare prototipuri

Page 7: SUBPROGRAME

SUBPROGRAME IMBRICATEPP

S1S2

S3 S4

S5S6

S7S8

S2

S1 S5

S3

S4

PP

S6

S7

S8