Primljeno k' znanju.
A evo da ispravim i gresku u postavljenom pitanju. Mislim da se Pecin odgovor odnosio i na prvi i na drugi deo pitanja, natero me covek da proverim. Pa evo sta kaze i knjiga na to:
..." Iako mozete definisati funkciju pre njenog koriscenja i tako izbeci potrebu kreiranja prototipa funkcije, ovo nije dobra programska praksa zbog tri razloga:
Prvo-zahtevati da se funkcije pojave u datotedc u odredenom redosledu je losa ideja. Ovo otezava odrzavanje programa dok se zahtevi menjaju.
Drugo-moze da zatreba sposobnost funkcije A() da pozove funkciju B(), ali i da vi B() trebalo da bude sposobna da pozove A(), pod odredjenim okolnostima. Nije moguce definisati A() pre definisanja B() i B() pre definisanja A(), pa se, zato, bar jedna od njih mora deklarisati, u svakom slucaju.
Trece-prototipovi funkcija su dobra i mocna tehnika dibagiranja. Ako vas prototip deklarise da vasa funkcija prihvata odredjen skup parametara, ili da vraca odreden tip vrednosti, a onda vasa funkcija ne odgovara prototipu, kompajler moze oznaciti vasu gresku, umesto da ceka da se ona sama pokaze kada izvrsite program"...
Nekad sam bio mlad ;)