Functii – Subprograme in C/C++

Utilizarea unor subprograme in domeniul programarii este necesara, intrucat sunt folositi in toti algoritmii pentru realizarea unui proiect software si nu numai.

Un subprogram este o functie. Functiile reprezinta un element fundamental in limbajul C/C++. Orice program este constituit dintr-o succesiune de functii, dintre care una este functia principala, adica main(). La lansarea in executie a unui program C/C++ este apelata functia main().

In acest capitol vom invata sa descriem propriile noastre functii (subprograme). Acestea vor fi apelate din functia main() sau dintr-o alta functie apelata din main().

Pentru a putea dezvolta si utiliza functii proprii este necesar sa cunoastem cum se definesc, cum se declara si cum se apeleaza functiile (subprogramele).


Definirea unei functii

O functia este constituita dintr-un antet, care contine numele functiei, tipul rezultatului returnat de functie, lista parametrilor si un bloc de instructiuni.

  • tip – tipul rezultatului returnat de functie (int, float, unsigned int, etc).
  • nume – numele functiei (ex: InversNr, Schimbare, etc).
  • lista_parametrii – constituita din una sau mai multe declaratii de parametrii, separate prin virgula. O declaratie de parametru specifica tipul si numele parametrului (ex: int x. Functia primeste un singur numar ca parametru, intreg pe nume x.)

Parametrii unor subprograme comunica cu „exteriorul”. Desemneaza date primite de functie din exterior.

Exemplu:

Observatie: Atunci cand functia este vida (de tipul void), nu se returneaza nimic (nu apare „return” in functie), ci doar se executa instructiunile ei.


Apelul subprogramelor

Apelul unor subprograme se pot realiza in doua moduri. Printr-o instructiune de apel sau ca operand intr-o expresie.

Instructiunea de apel al unei functii are urmatorul format general:

unde nume preprezinta numele functiei.

Exemplu:

Am folosit subprogramul NrPar ca operand intr-o expresie. Mai exact, am apelat functia NrPar pentru a verifica daca numarul transmis ca parametru este par sau impar. Astfel, am returnat 1 pentru par si 0 pentru impar, ulterior verificand expresia in int main().


Exemple de subprograme

Orice subprogram poate avea maxim numarul de parametrii declarati. In exemplul anterior, subprogramul SumaNr are 2 parametrii. Astfel, este imposibila un apel de forma: „SumaNr(a, b, c);”, insa este posibila un apel de forma: „SumaNr(a);”, chiar daca are 2 parametrii.

Vlad

Fac doar lucruri care-mi plac, care-mi aduc motivatie si fericire, nu material.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *