Objektum orientált programozás 3. Függvények Nagy Szilvia
Függvények Sorrendben kell a függvényeket definiálni, a main rész előtt. A main is csak egy speciális függvény void, int, char …, vagy bármilyen változótípus lehet a függvény kimenete A függvény argumentumai tetszőleges típusú változók lehetnek, (akár üres bemenetel is előfordulhat) return adja meg a visszatérési értékeket.
Függvények Definíciójuk: void függvény( int argumentum1, int argumentum2){ parancsok; } Meghívásuk: függvény(változó1, változó2); példák
Függvények – változók Helyi változók: csak a függvényeken belül érvényesek. Deklarálásuk a függvényen belül történik. Globális változók: minden függvény eléri őket, meg tudja őket változtatni. Deklarálásuk a függvények előtt történik.
Függvények fejléce A program elején elegendő csak a függvény bemeneti és kimeneti változóinak típusát és a függvény nevét – azaz egy prototípust – megadni, a függvény teljes leírása kerülhet a program végére is. A program így áttekinthetőbb lesz, könnyen megtalálható a main rész. kimeneti típus fvnév( argumentumok ); … (programtörzs) a teljes függvényleírás (ismételt fejléccel)
Függvények fejléce hagyományos, program eleji leírás:
Függvények fejléce fejléces, program végi leírás:
Függvények külön állományban Egy-egy függvény több program számára is szükséges lehet. Ha külön fájlban van a függvény, elegendő csak meghívni, nem szükséges a teljes függvényt a programba másolni, megteszi helyettünk a fordító. fejlécfájl – típusa.h függvényfájl – típusa.c programban szerepel, hogy #include ”fvfájlnév.h”
Függvények külön állományban Főprogram
Függvények külön állományban Fejléc (header):
Függvények külön állományban Fejléc (header): Függvényfájl:
Függvények külön állományban Fordítás során –c kapcsolóval csak fordítjuk a.c típusú fájlokat, majd az így kapott.o kiterjesztésű fájlokat újrafordítjuk. pl. gcc –c atlagolofvdarabolt.c gcc –c atlagolo.c gcc atlagolofvdarabolt.o atlagolo.o