17.04.2013 Views

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

Florian Moraru PROGRAMAREA CALCULATOARELOR în limbajul C

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Este preferabil ca definitia functiei “erase” sã preceadã definitia functiei “main”<br />

(sau a unei alte functii care o apeleazã). Dacã functia “erase” este definitã dupã functia<br />

“main” atunci este necesarã o declaratie pentru functia “erase” <strong>în</strong>aintea functiei<br />

“main”:<br />

void erase (); // declaratie functie<br />

void main () {<br />

erase(); . . . // utilizare functie<br />

}<br />

void erase() {<br />

. . . // definitie functie<br />

}<br />

Când se declarã prototipul unei functii cu argumente este suficient sã se declare<br />

tipul argumentelor, iar numele argumentelor formale pot lipsi. Exemplu:<br />

double unghi(double, double, double); // 3 argumente double<br />

In lipsa unei declaratii de tip explicite se considerã cã tipul implicit al functiei este<br />

int. Functia “main” poate fi declaratã fie de tip void, fie de tip int.<br />

Si argumentele formale fãrã un tip declarat explicit sunt considerate implicit de<br />

tipul int, dar nu trebuie abuzat de aceastã posibilitate. Exemplu:<br />

rest (a,b) { // int rest (int a, int b)<br />

return a%b;<br />

}<br />

Variabilele definite <strong>în</strong>tr-o functie pot fi folosite numai <strong>în</strong> functia respectivã, cu<br />

exceptia celor declarate extern. Pot exista variabile cu aceleasi nume <strong>în</strong> functii diferite,<br />

dar ele se referã la adrese de memorie diferite.<br />

O functie are <strong>în</strong> general un numãr de argumente formale (fictive), prin care<br />

primeste datele initiale necesare si poate transmite rezultatele functiei. Aceste<br />

argumente pot fi doar nume de variabile (nu orice expresii) cu tipul declarat <strong>în</strong> lista de<br />

argumente, pentru fiecare argument <strong>în</strong> parte. Exemplu:<br />

int comb (int n, int k) { // combinari de n luate cate k<br />

int i, cmb=1;<br />

for (i=1;i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!