Diferența dintre prototipul funcției și definiția funcției în C

Cuprins:

Diferența dintre prototipul funcției și definiția funcției în C
Diferența dintre prototipul funcției și definiția funcției în C

Video: Diferența dintre prototipul funcției și definiția funcției în C

Video: Diferența dintre prototipul funcției și definiția funcției în C
Video: function prototype and function definition in c | function definition and prototype example in c 2024, Noiembrie
Anonim

Diferența cheie – Prototipul funcției vs Definiția funcției în C

O funcție este un grup de instrucțiuni utilizate pentru a îndeplini o anumită sarcină. În programarea C, execuția începe de la main (). Este o funcție. În loc să scrieți toate instrucțiunile în același program, acesta poate fi împărțit în mai multe funcții. Fiecare funcție va îndeplini diferite funcționalități. Prototipul funcției spune compilatorului despre numele funcției, tipurile de returnare și parametrii. Este cunoscută și ca declarație de funcție. Fiecare funcție are un nume special pentru a o identifica. Declarațiile funcției sunt scrise într-o pereche de acolade. Funcțiile pot returna o valoare. Există unele funcții care nu returnează o valoare. Datele sunt transmise funcției folosind lista de parametri. Definiția funcției are funcționalitatea reală realizată de funcție. În programarea C, există prototipul funcției și definiția funcției. Diferența cheie dintre prototipul funcției și definiția funcției este că prototipul funcției conține doar declarația funcției, în timp ce definiția funcției conține implementarea efectivă a funcției. Definiția funcției are variabilele locale și instrucțiunile care determină ce face funcția.

Ce este prototipul funcției în C?

Function Prototype oferă declarația funcției. Specifică numele funcției, tipurile de returnare, parametrii. Tipurile returnate sunt tipul de date care se întoarce de la funcție. Când o funcție returnează un număr întreg, atunci tipul returnat este int. Când o funcție returnează o valoare float, atunci tipul returnat este un float. Dacă funcția nu returnează nicio valoare, este o funcție nulă. Numele funcției este folosit pentru a o identifica. Cuvintele cheie C nu pot fi folosite ca nume de funcții. Datele sunt transmise funcției folosind parametri. Prototipul funcției nu conține implementarea reală a funcției. Prototipul funcției are următoarea sintaxă.

(lista de parametri);

Dacă există o funcție care să calculeze maximum două numere, declarația poate fi scrisă ca int max (int num1, int num2); Valoarea maximă trebuie găsită în num1 și num2. Acestea sunt numere întregi și sunt transmise funcției. Tipul de returnare, la început, este, de asemenea, int. Deci, funcția returnează o valoare întreagă. Nu este necesar să scrieți numele parametrilor în prototipul funcției. Dar este necesar să scrieți tipurile de date. Prin urmare, int max (int, int); este, de asemenea, un prototip de funcție valid. Dacă există două numere întregi ca num1, num2, num3 și prototipul este scris ca int max(int num1, int num2, num3); este invalid.num1, num2 au tipurile de date, dar num3 nu are un tip de date. Prin urmare, este nevalid.

Diferența dintre prototipul funcției și definiția funcției în C
Diferența dintre prototipul funcției și definiția funcției în C

Consultați programul de mai jos.

include

int CarMax(int x, int y);

int main(){

int p=10;

int q=20;

int răspuns;

answer=calMax(p, q);

printf(„Valoarea maximă este %d\n”, răspuns);

return 0;

}

int calMax(int p, int q){

int value;

if(p>q) {

valoare=p;

}

else {

valoare=q;

}

valoare de returnare;

}

Conform celor de mai sus, a doua declarație arată prototipul funcției. Nu are implementare. Implementarea efectivă este după programul principal. Prototipurile de funcții sunt mai utile atunci când definiți o funcție într-un fișier sursă și apelați acea funcție într-un altul într-un alt fișier.

Ce este definiția funcției în C?

Definiția funcției are implementarea efectivă a funcției. Conține ceea ce ar trebui să facă funcția. Când programul apelează funcția, controlul este transferat către funcția apelată. După executarea funcției, controlul revine la funcția principală. Datele necesare sunt transmise funcției ca listă de parametri. Dacă există o valoare care revine, atunci este menționat tipul de returnare. Dacă nu există valori returnate, tipul returnat este nul. Consultați funcția de mai jos pentru a calcula aria unui triunghi.

include

float calArea(int x, int y);

int principal () {

int p=10;

int q=20;

zonă flot;

zonă=calArea(p, q);

printf („Valoarea maximă este %f\n”, zona);

return 0;

}

float calArea (int x, int y) {

valoare flotantă;

valoare=0,5xy;

valoare de returnare;

}

Conform programului de mai sus, a doua afirmație indică prototipul funcției. Implementarea efectivă a ceea ce face funcția este scrisă după programul principal. Este definiția funcției. Valorile p și q sunt transmise funcției calArea. Valoarea variabilei este o variabilă locală a funcției calArea. Zona este calculată și atribuită valorii variabilei. Apoi este revenit la programul principal.

Care sunt asemănările dintre prototipul funcției și definiția funcției în C?

  • Atât prototipul funcției, cât și definiția funcției sunt legate de funcții.
  • Atât prototipul funcției, cât și definiția funcției conțin numele funcției.
  • Atât prototipul funcției, cât și definiția funcției conțin tipuri de returnare.
  • Atât prototipul funcției, cât și definiția funcției conțin parametri.

Care este diferența dintre prototipul funcției și definiția funcției în C?

Prototipul funcției vs definiția funcției în C

Prototipul funcției specifică numele funcției, tipul de returnare, parametrii, dar omite corpul funcției. Definiția funcției specifică numele funcției, tipul de returnare; parametrii includ un corp de funcție.
Implementare
Prototipul funcției nu are implementarea funcției. Definiția funcției are implementarea funcției.

Rezumat – Prototipul funcției vs Definiția funcției în C

Folosirea funcțiilor în programe are avantaje. Funcțiile cresc reutilizarea codului. Nu este necesar să scrieți același cod din nou și din nou. În schimb, programatorul poate împărți programul și poate apela funcția necesară. În C există funcții de bibliotecă. Aceste funcții sunt declarate în fișierele antet C. Unele dintre ele sunt printf (), scanf () etc. Programatorul își poate scrie și propriile funcții. Există doi termeni care sunt asociați cu funcții în C. Aceștia funcționează prototip și definiție de funcție. Diferența dintre prototipul funcției și definiția funcției în C este că prototipul funcției conține doar declarația funcției, în timp ce definiția funcției conține implementarea efectivă a funcției.

Descărcați PDF-ul Function Prototype vs Function Definition în C

Puteți descărca versiunea PDF a acestui articol și să o utilizați în scopuri offline, conform nota de citare. Vă rugăm să descărcați versiunea PDF aici: Diferența dintre prototipul funcției și definiția funcției în C

Recomandat: