Funktion prototyypin ja funktion määritelmän välinen ero C:ssä

Sisällysluettelo:

Funktion prototyypin ja funktion määritelmän välinen ero C:ssä
Funktion prototyypin ja funktion määritelmän välinen ero C:ssä

Video: Funktion prototyypin ja funktion määritelmän välinen ero C:ssä

Video: Funktion prototyypin ja funktion määritelmän välinen ero C:ssä
Video: From C to Python by Ross Rheingans-Yoo 2024, Marraskuu
Anonim

Avainero – funktion prototyyppi vs funktion määritelmä C

Funktion on joukko lauseita, joita käytetään tietyn tehtävän suorittamiseen. C-ohjelmoinnissa suoritus alkaa main:sta (). Se on toiminto. Sen sijaan, että kirjoittaisit kaikki lauseet samaan ohjelmaan, se voidaan jakaa useisiin funktioihin. Jokainen toiminto suorittaa erilaisia toimintoja. Funktioprototyyppi kertoo kääntäjälle funktion nimen, palautustyypit ja parametrit. Se tunnetaan myös funktion määrittelynä. Jokaisella funktiolla on erityinen nimi sen tunnistamiseksi. Funktiolausekkeet kirjoitetaan a altosulkeiden sisään. Funktiot voivat palauttaa arvon. Jotkut funktiot eivät palauta arvoa. Tiedot välitetään funktiolle parametriluettelon avulla. Funktiomäärittelyssä on funktion todellinen toiminnallisuus. C-ohjelmoinnissa on funktion prototyyppi ja funktion määritelmä. Keskeinen ero funktion prototyypin ja funktiomäärityksen välillä on, että funktion prototyyppi sisältää vain funktion ilmoituksen, kun taas funktion määritelmä sisältää toiminnon todellisen toteutuksen. Funktiomäärittelyssä on paikalliset muuttujat ja lauseet, jotka määrittävät funktion toiminnan.

Mikä on Function Prototype C:ssä?

Function Prototype tarjoaa funktion määrityksen. Se määrittää funktion nimen, palautustyypit ja parametrit. Palautustyypit ovat tietotyyppi, joka palauttaa funktiosta. Kun funktio palauttaa kokonaisluvun, palautustyyppi on int. Kun funktio palauttaa float-arvon, palautustyyppi on float. Jos funktio ei palauta mitään arvoa, se on void-funktio. Funktion nimeä käytetään sen tunnistamiseen. C-avainsanoja ei voi käyttää funktioiden niminä. Tiedot välitetään funktiolle parametrien avulla. Toiminnon prototyyppi ei sisällä funktion todellista toteutusta. Funktioprototyypillä on seuraava syntaksi.

(parametriluettelo);

Jos on funktio kahden luvun enimmäismäärän laskemiseksi, ilmoitus voidaan kirjoittaa muodossa int max (int num1, int num2); Suurin arvo tulee löytyä numeroista num1 ja num2. Ne ovat kokonaislukuja, ja ne välitetään funktiolle. Palautustyyppi alussa on myös int. Joten funktio palauttaa kokonaisluvun arvon. Parametrien nimiä ei tarvitse kirjoittaa funktion prototyyppiin. Mutta on välttämätöntä kirjoittaa tietotyypit. Siksi int max (int, int); on myös kelvollinen funktion prototyyppi. Jos on kaksi kokonaislukua num1, num2, num3 ja prototyyppi kirjoitetaan muodossa int max(int num1, int num2, num3); se on virheellinen. Num1:llä, num2:lla on tietotyypit, mutta numerolla 3 ei ole tietotyyppiä. Siksi se on virheellinen.

Ero funktion prototyypin ja funktion määritelmän välillä C:ssä
Ero funktion prototyypin ja funktion määritelmän välillä C:ssä

Katso alla olevaa ohjelmaa.

sisällytä

int CarMax(int x, int y);

int main(){

int p=10;

int q=20;

int vastaus;

vastaus=calMax(p, q);

printf("Enimmäisarvo on %d\n", vastaus);

palautus 0;

}

int calMax(int p, int q){

int value;

if(p>q) {

arvo=p;

}

muuta {

arvo=q;

}

palautusarvo;

}

Yllä olevan mukaan toinen lause näyttää funktion prototyypin. Sillä ei ole toteutusta. Varsinainen toteutus on pääohjelman jälkeen. Funktioprototyypit ovat hyödyllisempiä, kun määritetään funktio yhdessä lähdetiedostossa ja kutsutaan kyseistä funktiota toisessa toisessa tiedostossa.

Mikä on C:n funktion määritelmä?

Funktion määrittelyssä on funktion todellinen toteutus. Se sisältää mitä toiminnon tulee tehdä. Kun ohjelma kutsuu funktiota, ohjaus siirtyy kutsutulle funktiolle. Toiminnon suorittamisen jälkeen ohjaus palaa takaisin päätoimintoon. Tarvittavat tiedot välitetään funktiolle parametriluettelona. Jos arvo palautuu, palautustyyppi mainitaan. Jos palautusarvoja ei ole, palautustyyppi on mitätön. Laske kolmion pinta-ala alla olevasta funktiosta.

sisällytä

float calArea(int x, int y);

int main () {

int p=10;

int q=20;

asuntoalue;

ala=calPinta-ala(p, q);

printf ("Maksimiarvo on %f\n", alue);

palautus 0;

}

float calArea (int x, int y) {

float value;

arvo=0,5xy;

palautusarvo;

}

Yllä olevan ohjelman mukaan toinen lause osoittaa funktion prototyypin. Todellinen toteutus siitä, mitä toiminto suorittaa, kirjoitetaan pääohjelman jälkeen. Se on funktion määritelmä. P- ja q-arvot välitetään calArea-funktiolle. Muuttujan arvo on calArea-funktion paikallinen muuttuja. Pinta-ala lasketaan ja liitetään muuttujan arvoon. Sitten se palautetaan takaisin pääohjelmaan.

Mitä yhtäläisyyksiä funktion prototyypin ja funktion määritelmän välillä on C?

  • Sekä funktion prototyyppi että funktion määritelmä liittyvät funktioihin.
  • Sekä funktion prototyyppi että funktion määritelmä sisältävät funktion nimen.
  • Sekä funktion prototyyppi että funktion määritelmä sisältävät palautustyyppejä.
  • Sekä funktion prototyyppi että funktion määritelmä sisältävät parametreja.

Mitä eroa on C:n funktion prototyypin ja funktion määritelmän välillä?

Function Prototype vs Function Definition C

Funktion prototyyppi määrittää funktion nimen, palautustyypin ja parametrit, mutta jättää pois funktion rungon. Funktion määritelmä määrittää funktion nimen, palautustyypin; parametrit sisältävät funktion rungon.
Toteutus
Funktion prototyypissä ei ole funktion toteutusta. Funktion määrittelyssä on funktion toteutus.

Yhteenveto – funktion prototyyppi vs funktion määritelmä C

Ohjelmien toimintojen käyttämisellä on etuja. Toiminnot lisäävät koodin uudelleenkäytettävyyttä. Samaa koodia ei tarvitse kirjoittaa uudestaan ja uudestaan. Sen sijaan ohjelmoija voi jakaa ohjelman ja kutsua tarvittavan toiminnon. C:ssä on kirjastotoimintoja. Nämä funktiot on ilmoitettu C-otsikkotiedostoissa. Jotkut niistä ovat printf (), scanf () jne. Ohjelmoija voi myös kirjoittaa omia toimintojaan. C:n funktioihin liittyy kaksi termiä. Ne toimivat prototyyppinä ja funktion määritelmänä. Ero funktion prototyypin ja funktion määritelmän välillä C:ssä on, että funktion prototyyppi sisältää vain funktion ilmoituksen, kun taas funktion määritelmä sisältää funktion varsinaisen toteutuksen.

Lataa PDF-tiedosto Function Prototype vs Function Definition C

Voit ladata tämän artikkelin PDF-version ja käyttää sitä offline-tarkoituksiin lainaushuomautuksen mukaisesti. Lataa PDF-versio tästä: Ero funktion prototyypin ja funktion määritelmän välillä C

Suositeltava: