Showing posts with label pointeri la functii. Show all posts
Showing posts with label pointeri la functii. Show all posts

Friday, November 27, 2015

Limbajul C. Pointeri la functii. Un mic reminder al algoritmului GCD (Greatest Common Divisor)

O functie este stocata in memorie la o adresa, exact ca o variabila iar adresa functiei respective se obtine utilizand numele functiei, fara paranteze si parametri formali, exact cum utilizam numele unui tablou pentru a asigna adresa sa unui pointer la tipul elementelor tabloului. 

Faptul ca o functie este stocata (incarcata) de compilator la o anumita adresa permite utilizarea unui pointer la functia respectiva.

Sintaxa declararii unui pointer la functie:

tip_return_functie (* ptrf)( lista_de_parametri_formali_ai_functiei );

Prima pereche de paranteze este necesara intrucat, in absenta acestor paranteze, declaratia respectiva ar fi prototipul unei functii numite ptrf cu lista specificata de parametri si care intoarce un pointer la tip_return_functie.