Kulcskülönbség – A függvény prototípusa és a függvénydefiníció a C nyelvben
A függvény utasítások csoportja, amelyeket egy adott feladat végrehajtására használnak. A C programozásban a végrehajtás a main ()-ról indul. Ez egy funkció. Ahelyett, hogy az összes utasítást ugyanabban a programban írná, több függvényre osztható. Mindegyik funkció más-más funkciókat fog végrehajtani. A függvény prototípusa megmondja a fordítónak a függvény nevét, a visszatérési típusokat és a paramétereket. Funkciódeklarációként is ismert. Minden funkciónak külön neve van az azonosításhoz. A függvény utasításokat egy kapcsos zárójelbe írjuk. A függvények visszaadhatnak egy értéket. Vannak olyan függvények, amelyek nem adnak vissza értéket. Az adatok a paraméterlista segítségével kerülnek átadásra a függvénynek. A függvénydefiníció tartalmazza a függvény által végrehajtott tényleges funkcionalitást. A C programozásban van függvény prototípus és függvénydefiníció. A fő különbség a függvényprototípus és a függvénydefiníció között az, hogy a függvényprototípus csak a függvény deklarációját tartalmazza, míg a függvénydefiníció a funkció tényleges megvalósítását. A függvénydefiníció tartalmazza a lokális változókat és az utasításokat, amelyek meghatározzák, hogy a függvény mit csinál.
Mi a Function Prototype a C-ben?
A függvényprototípus biztosítja a függvény deklarációját. Megadja a függvény nevét, a visszatérési típusokat, a paramétereket. A visszatérési típusok azok az adattípusok, amelyek a függvényből térnek vissza. Ha egy függvény egész számot ad vissza, akkor a visszatérési típus int. Ha egy függvény float értéket ad vissza, akkor a visszatérési típus float. Ha a függvény nem ad vissza semmilyen értéket, az érvénytelen függvény. A függvény neve azonosítására szolgál. A C kulcsszavak nem használhatók függvénynévként. Az adatokat paraméterek segítségével továbbítják a függvénynek. A függvény prototípusa nem tartalmazza a függvény valós megvalósítását. A függvény prototípusának szintaxisa a következő.
(paraméterlista);
Ha van függvény a maximum két szám kiszámítására, akkor a deklaráció int max-ként írható fel (int num1, int num2); A maximális értéket a num1-ben és a num2-ben kell megtalálni. Ezek egész számok, és átadódnak a függvénynek. A visszatérési típus az elején szintén int. Tehát a függvény egész értéket ad vissza. Nem szükséges beírni a paraméterneveket a függvény prototípusába. De meg kell írni az adattípusokat. Ezért int max (int, int); is egy érvényes függvény prototípus. Ha van két egész szám1, num2, num3, és a prototípust int max(int szam1, int szám2, szám3) alakban írjuk ki; ez érvénytelen. A num1, num2 rendelkezik az adattípusokkal, de a num3 nem rendelkezik adattípussal. Ezért érvénytelen.
Tekintse meg az alábbi programot.
tartalmazza
int CarMax(int x, int y);
int main(){
int p=10;
int q=20;
int válasz;
válasz=calMax(p, q);
printf(“A maximális érték %d\n”, válasz);
vissza 0;
}
int calMax(int p, int q){
int value;
if(p>q) {
érték=p;
}
egyéb {
érték=q;
}
visszatérési érték;
}
A fentiek szerint a második utasítás a függvény prototípusát mutatja. Nincs benne megvalósítás. A tényleges megvalósítás a főprogram után történik. A függvényprototípusok hasznosabbak, ha egy függvényt az egyik forrásfájlban definiálnak, és a függvényt egy másik fájlban hívják meg.
Mi a függvénydefiníció C-ben?
A függvénydefiníció tartalmazza a függvény tényleges megvalósítását. Azt tartalmazza, hogy mit kell tennie a függvénynek. Amikor a program meghívja a függvényt, a vezérlés átkerül a meghívott függvényre. A funkció végrehajtása után a vezérlés visszatér a fő funkcióhoz. A szükséges adatok paraméterlistaként kerülnek átadásra a függvénynek. Ha van visszatérő érték, akkor a visszatérési típus szerepel. Ha nincsenek visszatérési értékek, a visszatérési típus érvénytelen. A háromszög területének kiszámításához használja az alábbi függvényt.
tartalmazza
float calArea(int x, int y);
int main () {
int p=10;
int q=20;
flotta terület;
terület=calArea(p, q);
printf („A maximális érték %f\n”, terület);
vissza 0;
}
float calArea (int x, int y) {
lebegő érték;
érték=0,5xy;
visszatérési érték;
}
A fenti program szerint a második utasítás a függvény prototípusát jelöli. A funkció tényleges megvalósítása a főprogram után van írva. Ez a függvény definíciója. A p és q értékeket a rendszer átadja a calArea függvénynek. A változó értéke a calArea függvény helyi változója. A terület kiszámítása és hozzárendelése a változó értékéhez. Ezután visszakerül a fő programba.
Mi a hasonlóság a függvény prototípusa és a C-beli függvénydefiníció között?
- Mind a függvény prototípusa, mind a függvénydefiníció a függvényekhez kapcsolódik.
- Mind a függvény prototípusa, mind a függvénydefiníció tartalmazza a függvény nevét.
- Mind a függvény prototípusa, mind a függvénydefiníció tartalmaz visszatérési típusokat.
- Mind a függvény prototípusa, mind a függvénydefiníció tartalmaz paramétereket.
Mi a különbség a függvényprototípus és a C-beli függvénydefiníció között?
Funkció prototípus vs függvénydefiníció C-ban |
|
A függvény prototípusa megadja a függvény nevét, a visszatérési típust, a paramétereket, de kihagyja a függvény törzsét. | A függvénydefiníció megadja a függvény nevét és a visszatérési típust; a paraméterek tartalmaznak egy függvénytörzset. |
Megvalósítás | |
A függvény prototípusa nem rendelkezik a függvény megvalósításával. | A függvénydefiníció rendelkezik a függvény megvalósításával. |
Összefoglalás – A függvény prototípusa vs. függvénydefiníció a C nyelvben
A függvények programokban való használata előnyökkel jár. A funkciók növelik a kód újrafelhasználhatóságát. Nem szükséges ugyanazt a kódot újra és újra leírni. Ehelyett a programozó feloszthatja a programot és meghívhatja a szükséges függvényt. A C-ben vannak könyvtári függvények. Ezek a függvények a C fejlécfájlokban vannak deklarálva. Néhány közülük printf (), scanf () stb. A programozó saját függvényeket is írhat. Két kifejezés kapcsolódik a C-beli függvényekhez. Ezek a prototípus és a függvénydefiníció függvényei. A különbség a függvény prototípusa és a C-beli függvénydefiníció között az, hogy a függvény prototípusa csak a függvény deklarációját tartalmazza, míg a függvénydefiníció a függvény tényleges megvalósítását.
Töltse le a Function Prototype vs Function Definition PDF-fájlját C
A cikk PDF-verzióját letöltheti, és offline célokra használhatja az idézési megjegyzés szerint. Kérjük, töltse le a PDF verziót innen: Különbség a függvényprototípus és a függvénydefiníció között a C nyelvben