Rozdíl mezi deklarací a definicí v C

klíčový rozdíl mezi deklarací a definicí v C je to deklarace v C říká kompilátoru o názvu funkce, typu návratu a parametrech, zatímco definice v C obsahuje skutečnou implementaci funkce. To znamená, že deklarace poskytuje kompilátoru informace o funkci, zatímco definice obsahuje skutečné příkazy funkce k provedení konkrétní úlohy.

C je strukturovaný programovací jazyk obecného účelu. Používá řídicí struktury, jako jsou if / else, opakování jako pro loop, while loop a funkce. Funkce je sada příkazů, které pomáhají opakovaně vykonávat určitý úkol. Dále je možné volat funkce z hlavní funkce. Po provedení posledního příkazu funkce přejde ovládací prvek zpět do hlavní funkce. Tento článek pojednává o deklaraci a definici funkcí v C a porovnává rozdíly mezi nimi. Definice funkce určuje, co funkce dělá, a deklarace určuje, co jde do funkce; je to prototyp.

OBSAH

1. Přehled a klíčový rozdíl
2. Co je prohlášení v C
3. Co je definice v C
4. Porovnání bok po boku - Deklarace vs Definice v C ve formě tabulky
5. Shrnutí

Co je prohlášení v C?

Prohlášení poskytuje kompilátoru informace o funkci. Syntaxe deklarace je následující.

return_ type function_name (seznam parametrů);

Předpokládejme funkci, která vypočítá součet dvou celých čísel. Prohlášení je následující.

int součet (int num1, int num2);

Název funkce je součet a parametry jsou dvě celá čísla, která jsou num1 a num2. Tato funkce vrací celé číslo. Úplné prohlášení končí středníkem.

Není nutné uvádět názvy parametrů v deklaraci. Proto je také možné zmínit pouze následující typ dat. Následuje platné prohlášení.

int suma (int, int);

Co je definice v C?

Definice obsahuje skutečné příkazy funkce k provedení určitého úkolu. Syntaxe je následující.

return_type function_name (seznam parametrů)

// příkazy funkce

Název funkce pomáhá identifikovat funkci. Při vyvolání funkce přecházejí hodnoty na tuto funkci. Tyto hodnoty se zkopírují do parametrů. Seznam parametrů může obsahovat jeden parametr nebo počet parametrů. A tyto parametry mají datový typ a název. Kromě toho mohou existovat funkce bez jakéhokoli parametru.

Příkazy funkce jsou uvnitř složených závorek. Je to funkční tělo. Po provedení funkce vrátí hodnotu. Typ vrácení závisí na návratové hodnotě. Pokud funkce vrací celé číslo, je návratový typ int. Pokud funkce vrací dvojnásobek, pak je návratový typ dvojitý atd.

Viz níže uvedený kód s deklarací a definicí funkce.

Obrázek 01: Program pro výpočet součtu dvou čísel

Podle výše uvedeného programu se v řádku 3 zobrazí deklarace. Vypovídá kompilátoru o názvu funkce, parametrech atd. V hlavní funkci jsou z klávesnice převzaty dvě hodnoty a jsou uloženy do proměnné 'a' a 'b'. V řádku 12 jsou tyto hodnoty předány funkci nazvané sum. Toto 'a' a 'b' jsou argumenty.

V řádku 16 se provede součtová funkce. Zkopíruje hodnotu a do num1 a hodnotu b do num2. Tato funkce vrací součet a tato hodnota se ukládá do proměnné „ans“ (řádek 12). Nakonec se odpověď vytiskne na obrazovku. Stručně řečeno, řádek 3 zobrazuje prohlášení, zatímco řádky 16 až 18 zobrazují definici.

Jaký je rozdíl mezi deklarací a definicí v C?

Deklarace je prototyp, který specifikuje název funkce a typový podpis, jako jsou datové typy, návratové typy a parametry, ale vynechá tělo funkce. Definice specifikuje název funkce a podpisy typu, jako jsou datové typy, návratové typy a parametry, a zahrnuje tělo funkce. Deklarace říká kompilátoru o názvu funkce a jak ji nazvat. Na druhé straně definice obsahuje skutečnou implementaci funkce. Popisuje úlohu funkce.

Shrnutí - Prohlášení vs. Definice v C

Rozdíl mezi deklarací a definicí v C je ten, že deklarace v C říká kompilátoru o názvu funkce, typu návratu a parametrech, zatímco definice v C obsahuje skutečnou implementaci funkce.

Odkaz:

1.Cvičení Bod. "Funkce C." Výukové programy Point, 19. března 2018. K dispozici zde  
2. „Funkční prototyp“. Wikipedia, Wikimedia Foundation, 28. května 2018. K dispozici zde