Documente Academic
Documente Profesional
Documente Cultură
Un program in C este un ansamblu de functii care efectueaza o activitate bine definita. Dintre aceste
functii, intotdeuna o functie este numita main si este functia care este apelata la lansarea in executie a
programului.
1. Forma generala a unei functii
Sintaxa unei functii este urmatoarea:
tip_rezultat nume_functie (lista_de_parametrii)
tip_rezultat - specifica tipul de date pe care il returneaza functia . o functie poate returna
orice tip de data cu exceptia unei matrice. Daca nu este specificat nici un tip, compilatorul presupune ca
acea functie returneaza un rezultat de tip intreg.
lista_de_parametrii - este o lista separata prin virgule de nume de variabile si tipu
121d38b rile lor associate care primesc valorile argumentelor atunci cand este apelata functia. O functie
poate sa nu aiba parametrii, caz in care lista lor este vida. Totusi parantezele sunt necesare, chiar daca nu
exista parametri.
In declaratiile de variabile globale ne putem referi la mai multe variabile de acelasi tip folosind o
lista cu numele lor separate prin virgula. Spre deosebire de acestea variabilele locale (parametrii unei
functii) trebuie declarati individual, fiecare continand atat tipul cat si numele.
Ex.
f(int i, int k, float j) /*corect*/
f (int i, k, float j) /*gresit*/
Fiecare functie este un bloc de cod discret. O functie nu poate avea acces la codul unei alte
functii decat printr-un apel de functie. Variabilele declarate intr-o functie sunt variabile locale, adica snt
create la intrarea in functia respectiva si distruse la iesirea din aceasta. Nu se poate defini o functie intr-o
alta functie, deci toate functiile au aceeasi sfera de influenta.
2. Argumentele functiei
Daca o functie urmeaza sa foloseasca argumente, ea trebuie sa declare variabile care accepta
valori ale argumentelor. Aceste variabile sunt denumite parametri formali ai functiei. Ei se comporta ca si
celelalte variabile locale din functie si sunt create la intrarea intr-o functie si distruse la iesirea din ea.
Declararea parametrilor se face dupa numele functiei.
3. Apelul unei functii
Apelul unei functii se face specificand numele functiei urmat de lista parametrilor actuali.
Aceasta este formata din variabile, constante sau expresii compatibile ca tip cu parametrii formali, adica
fiecarui parametru formal i se asociaza o variabila, o constanta sau o expresie compatibila ca tip.
Daca lista de parametrii este vida, apelul se face specificand numele functiei urmat de paranteze
rotunde.
Ex.
int f(int k, int i, float a);
int g (void);
apelul functiilor f si g se poate face astfel:
int m, j;
float b;
j=g();
f (m, j+1, 12.5);
4. Prototipul unei functii.
Definitia unei functii apare in cadrul fisierului sursa, inaintea fiecarui apel, numai in cazuri
particulare. Definitia lipseste in cazul functiilor din biblioteci sau atunci cand functia se afla in alt fisier
sursa sau proiect (in cadrul unui proiect nu se admite ca o functie sa fie definita de doua ori).
Pentru ca la compilare sa se poata efectua si validarea apelurilor unei functii, limbajul C prevede
declaratii fara definirea functiilor, numite prototipuri. Aceste sunt recomandate in C si impuse in C++.