ključna razlika između deklaracije i definicije u C je to deklaracija u C govori prevoditelju o nazivu funkcije, vrsti povratka i parametrima, dok definicija u C sadrži stvarnu implementaciju funkcije. Odnosno, deklaracija pruža informacije o funkciji prevoditelju dok definicija sadrži stvarne izjave funkcije za obavljanje određenog zadatka.
C je opći namjena, strukturirani programski jezik. Koristi upravljačke strukture poput if / else, ponavljanja poput petlje, dok petlja i funkcije. Funkcija je skup iskaza koji pomaže izvoditi određeni zadatak iznova i iznova. Nadalje, moguće je pozvati funkcije iz glavne funkcije. Nakon izvršenja posljednjeg izraza funkcije, kontrola se vraća na glavnu funkciju. Ovaj članak govori o deklaraciji i definiciji funkcija u C i uspoređuje razliku među njima. Definicija funkcije određuje što funkcija radi, a deklaracija određuje što ide u funkciju; to je prototip.
1. Pregled i ključne razlike
2. Što je deklaracija u C
3. Što je definicija u C-u
4. Usporedna usporedba - Izjava protiv definicije u obliku C u tabelarnom obliku
5. Sažetak
Izjava pruža prevoditelju informacije o funkciji. Sintaksa za deklaraciju je sljedeća.
return_ upišite ime_podatka (popis parametara);
Pretpostavimo funkciju koja izračunava zbroj dva cijeli broja. Izjava je sljedeća.
int sum (int num1, int num2);
Naziv funkcije je zbroj, a parametri su dva cjelobrojna broja koji su num1 i num2. Ova funkcija vraća cijeli broj. Kompletna izjava završava se zarezom.
U deklaraciju nije potrebno navesti imena parametara. Stoga je moguće spomenuti i samo sljedeću vrstu podataka. Slijedi valjana izjava.
int sum (int, int);
Definicija sadrži stvarne izjave funkcije za izvođenje određenog zadatka. Sintaksa je sljedeća.
return_type function_name (popis parametara)
// izjave o funkcijama
Naziv funkcije pomaže u prepoznavanju funkcije. Prilikom poziva funkcije, vrijednosti prelaze na tu funkciju. Te vrijednosti kopiraju u parametre. Popis parametara može sadržavati jedan parametar ili broj parametara. A ti parametri imaju vrstu podataka i naziv. Uz to, mogu biti i funkcije bez ikakvih parametara.
Iskazi funkcije nalaze se unutar zavojnih zagrada. To je funkcijsko tijelo. Nakon izvršenja funkcije vratit će vrijednost. Vrsta povratka ovisi o povratnoj vrijednosti. Ako funkcija vrati cijeli broj, vrsta povratka je int. Ako funkcija vraća dvostruko, tada je vrsta povratka dvostruka itd.
Pogledajte donji kôd s deklaracijom i definicijom funkcije.
Slika 01: Program za izračunavanje zbroja dva broja
Prema gornjem programu, redak 3 prikazuje deklaraciju. Obavještava sastavljač o nazivu funkcije, parametrima itd. U glavnoj se funkciji dvije tipke uzimaju s tipkovnice i pohranjuju se u varijable 'a' i 'b'. U retku 12 ove se vrijednosti prenose na funkciju koja se zove zbroj. To su 'a' i 'b' argumenti.
U retku 16 izvršava se funkcija zbroja. Kopira vrijednost a u num1 i vrijednost b u num2. Ova funkcija vraća zbrajanje i ta vrijednost pohranjuje u varijablu 'ans' (redak 12). Konačno, odgovor se ispisuje na ekranu. Ukratko, redak 3 prikazuje deklaraciju, dok linija 16 do 18 prikazuje definiciju.
Izjava je prototip koji određuje naziv funkcije i potpis tipa, kao što su tipovi podataka, vrste povratka i parametri, ali izostavlja funkcionalno tijelo. Definicija određuje naziv funkcije i potpise tipa kao što su tipovi podataka, vrste povratka i parametri, a uključuje i funkcijsko tijelo. Izjava govori prevoditelju o imenu funkcije i kako je nazvati. S druge strane, definicija sadrži stvarnu provedbu funkcije. Opisuje zadaću funkcije.
Razlika između deklaracije i definicije u C je da deklaracija u C govori prevoditelju o nazivu funkcije, vrsti povratka i parametrima, dok definicija u C sadrži stvarnu implementaciju funkcije.
1.Tutorials Point. "C funkcije". Točka tutorijala, 19. ožujka 2018. Dostupno ovdje
2. "Prototip funkcije." Wikipedija, Zaklada Wikimedia, 28. svibnja 2018. Dostupno ovdje