Forskel mellem erklæring og definition i C

Det vigtigste forskel mellem deklaration og definition i C er det deklaration i C fortæller kompilatoren om funktionens navn, returtype og parametre, mens definitionen i C indeholder den faktiske implementering af funktionen. Det vil sige, erklæring giver information om funktionen til kompilatoren, mens definitionen indeholder de faktiske udsagn om funktionen til at udføre en bestemt opgave.

C er et generelt formål, struktureret programmeringssprog. Den bruger styrestrukturer som hvis / andet, gentagelser som for loop, mens loop og funktioner. En funktion er et sæt sæt, der hjælper med at udføre en bestemt opgave igen og igen. Derudover er det muligt at kalde funktionerne fra hovedfunktionen. Efter udførelse af den sidste erklæring om funktionen vender kontrollen tilbage til hovedfunktionen. Denne artikel drøfter erklæringen og definitionen af ​​funktioner i C og sammenligner forskellen mellem dem. Funktionsdefinitionen specificerer, hvad funktionen gør, og erklæring specificerer, hvad der går til funktionen; det er en prototype.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er erklæring i C
3. Hvad er definitionen i C
4. Sammenligning side ved side - Erklæring vs definition i C i tabelform
5. Resume

Hvad er erklæring i C?

Erklæring giver information om kompilatorens funktion. Syntaks for erklæringen er som følger.

return_ type function_name (parameterliste);

Antag en funktion, der beregner summen af ​​to heltal. Erklæringen er som følger.

int sum (int num1, int num2);

Navnet på funktionen er sum, og parametrene er to heltal, der er num1 og num2. Denne funktion returnerer et heltal. Den komplette erklæring ender med en semikolon.

Det er ikke nødvendigt at medtage navnene på parametrene i erklæringen. Derfor er det også muligt kun at nævne datatypen som følger. Følgende er en gyldig erklæring.

int sum (int, int);

Hvad er definitionen i C?

Definition indeholder de faktiske udsagn om funktionen til at udføre en bestemt opgave. Syntaks er som følger.

return_type function_name (parameterliste)

// funktionsangivelser

Funktionsnavn hjælper med at identificere funktionen. Når der kaldes på en funktion, overføres værdier til denne funktion. Disse værdier kopieres til parametrene. Parameterlisten kan indeholde en parameter eller et antal parametre. Og disse parametre har en datatype og et navn. Der kan desuden være funktioner uden nogen parameter også.

Funktionens udsagn er inde i de krøllede seler. Det er funktionskroppen. Efter udførelse af funktionen returnerer den en værdi. Returtypen afhænger af returværdien. Hvis funktionen returnerer et heltal, er returtypen int. Hvis funktionen returnerer en dobbelt, er returtypen dobbelt osv.

Se nedenstående kode med erklæring og definition af en funktion.

Figur 01: Program til beregning af sammenlægningen af ​​to numre

I henhold til ovenstående program viser linje 3 erklæringen. Den fortæller kompilatoren om funktionsnavnet, parametre osv. I hovedfunktionen tages to værdier fra tastaturet, og de gemmes i variablen 'a' og 'b'. I linje 12 overføres disse værdier til den funktion, der kaldes summen. Dette 'a' og 'b' er argumenter.

I linje 16 udføres sumfunktionen. Den kopierer værdien a til num1 og værdien b til num2. Denne funktion returnerer summeringen, og den værdi gemmes til variablen 'ans' (linje 12). Endelig udskrives svaret på skærmen. Kort fortalt viser linje 3 erklæringen, mens linje 16 til 18 viser definitionen.

Hvad er forskellen mellem erklæring og definition i C?

Deklaration er en prototype, der specificerer funktionsnavnet og typesignaturen såsom datatyper, returtyper og parametre, men som udelader funktionslegemet. Definition specificerer funktionsnavnet og typesignaturerne såsom datatyper, returtyper og parametre, og det inkluderer funktionslegemet. Erklæring fortæller kompilatoren om funktionsnavnet og hvordan man kalder det. På den anden side indeholder definitionen den faktiske implementering af funktionen. Den beskriver funktionens opgave.

Sammendrag - Erklæring vs definition i C

Forskellen mellem deklaration og definition i C er, at deklaration i C fortæller kompilatoren om funktionsnavnet, returtypen og parametrene, mens definitionen i C indeholder den faktiske implementering af funktionen.

Reference:

1.Tutorials Point. “C-funktioner.” Tutorials Point, 19. mar. 2018. Tilgængelig her  
2. "Funktionsprototype." Wikipedia, Wikimedia Foundation, 28. maj 2018. Tilgængelig her