Tamás Ferenc: C++
(az emelt szintű érettségin)
Előszó
2. rész: Kiírások, alapvető típusok és műveleteik
3. rész: Ciklusok
4.rész: Mutatók és tömbök
5. rész: Függvények és külső eljárások
6. rész: Tömbök gyakorlati használata és egyéb példák
7. rész: Adatstruktúrák és file-műveletek
8. rész: Osztályok és könyvtárak
9. rész: Osztályok, numerikus könyvtár, input/output műveletek könyvtára, string műveletek könyvtára, dátum/idő műveletek könyvtára, többcélú műveleti könyvtár
Jelen cikksorozatom elsődleges célja az emelt szintű érettségi vizsgára készülők számára egy elfogadható szintű C++ tudást nyújtani. Nem célom és jelen keretekbe nem is fér bele, hogy a semmi programozói tudásból építsek fel egy programozási nyelvet. Véleményem szerint ráadásul a C++ nem egy tipikus kezdő nyelv!
Amit ígérhetek: egy tisztességes tudás, amivel a már egy nyelven programozási alapokkal rendelkező jelölt meg tud felelni az emelt szintű informatika érettségi vizsga követelményeinek. Aki nem szeretne érettségizni, csak tisztán a nyelv érdekli, az is megtalálja a magának valót, mivel ez a cikk-sorozat terveim szerint egy tisztességes áttekintést ad a nyelv lehetőségeiről. Fontos, hogy terveim szerint csak a konzolos (értsd: DOS alatti) működést fogom megírni. Be kell vallanom, hogy jelen pillanatban ezen a nyelven nincs elegendő tudásom és tapasztalatom ahhoz, hogy a Windows alatti működést is tisztességesen elmagyarázzam, bár a cikk-sorozat végén (terveim szerint) fog szerepelni pár működőképes Windows alatti igen egyszerű ablak. (Ezt a részt még magam sem tanítottam végig és sajnos még számomra is vannak kissé homályos részek ...)
A sorozatot végigtanítottam a saját emelt szintű informatika csoportomban a székesfehérvári Jákyban.
Nem ígérhetek teljes tudást és mindenre kiterjedő megértést, de bátran ígérek egy komoly áttekintést, aminek alapján már el lehet indulni a C++ megismerésének rögös útján!
Maga a C nyelv egy igen sok minden lehetőséget magába foglaló, igen rugalmas nyelv. Ennek szerves folytatása a C++ nyelv is. Népszerűsége és ingyenessége miatt elég sok fordító született hozzá. Ez a sorozat a CodeBlocks 10.05-ös verziójában íródott Windows alatt. A képernyőképek saját gépemről valók. Valamennyi itt szereplő programot kipróbáltam és biztosan működik, tehát a tisztelt olvasót nem várják „meglepetések”. Nem kívánhatok mást, mint jó munkát és tengernyi sok türelmet!
Munkám során a következő oldalakat használtam:
- http://cplusplus.com/doc/tutorial/
- http://nyelvek.inf.elte.hu/leirasok/Mobil_J2ME/index.php?chapter=1
1. fejezet: Letöltés és telepítés
Nyissuk meg egy böngészőben a www.codeblocks.org oldalt. Ott kattintsunk rá a „Downloads” menüre.
A feljövő ablakban a „Download the binary release” feliratra kell kattintani.
Itt már csak a megfelelő platformot kell kiválasztani. Jelen esetben ez a Windows. Fontos, hogy két különféle telepítő csomag van, amiből a nagyobbat kell választani, mert az igen sok, kellemes lehetőséget is magában foglal.
A teljes csomag 74 Mbyte, tehát elég gyorsan lejön.
A pontos jelenlegi URL: http://sourceforge.net/projects/codeblocks/files/Binaries/10.05/Windows/codeblocks-10.05mingw-setup.exe
A program letöltése után jöhet a telepítés, ami a szokásoknak megfelelően pár kattintásból áll csupán!
A program elindítása után üdvözöl a telepítő.
A Next gomb lenyomása után jöhet a licensz-szerződés elolvasása.
Ezt el kell fogadni (I Agree), majd jön a komponensek beállítása, bár ezt nem célszerű változtatni!
A következő lépésben meg kell adni, hogy hová legyen felrakva a program. Alapesetben a jól ismert „Program Files” bukkan fel.
A tényleges installálás alig egy perc egy átlagos gépen...
Több kötözködés nincs, csak a tényleges telepítés.
A programot máris el akarja indítani. Én személy szerint ezt nem szeretem...
… mivel szeretem látni, hogy akar-e valamit még a telepítő? Nos, ezúttal szerencsére semmit nem szeretne!
A „Next” gomb a kilépésig juttat el.
Ekkor már tudjuk futtatni a szokásos módon a CodeBlocks programot!
2. fejezet: Legelső futtatás
Több programmal ellentétben a CodeBlocks nem tesz ki ikont az asztalra, így a Start menüben kell megkeresnünk a helyét. Ez Win7-es rendszerekben nem túl bonyolult, de a régebbi verziók esetén is csak 1-2 kattintással lesz több. Szóval, a bal oldali ikont kell megtalálni!
Legelső futtatásnál nem a máskor megszokott képernyő fogad, hanem a CodeBlocks igyekszik érzékelni a környezetét. Ez általában problémamentesen sikerül is, mint a következő ábrán is látható.
Ez után a teljes képernyő nyílik meg, ami első pillanatra elég bonyolultnak látszik, de nem kell tőle megijedni!
Először is be kell zárni a napi tippet (de érdemes meghagyni!), majd a bal oldalon kellemetlenkedő „Scripting console”-t is le lehet csukni.
A tényleges munka előtt felbukkan a fájl-asszociációs ablak is:
Ezt egyetlen „OK”-kattintással el tudjuk hallgattatni. Így már végre megkaptuk a főablakot, melynek főbb részei a következők:
- Az ablak tetején látható menürendszer és ikonok.
- A bal oldalon helyet foglaló „Management” ablak, benne három egymás melletti füllel. Leggyakrabban a jelenleg is aktív „Projects” fület fogjuk használni
- Az ablak legalján helyet foglaló „Log & others”, ahová minden apróbb, de annál fontosabb megjegyzést ír ki a fordító.
- Az ablak nagy részét kitevő fül, mely jelenleg a „Start here” nevet kapta. Ebben látjuk a következőket:
A tényleges munkát legelőször a „Create a new project” feliratra kattintással tudjuk elkezdeni.
Itt a következő fontos ablak fogad:
A pirossal bekarikázott ikonra kell kattintani – ezzel tudunk egyszerű szöveges alkalmazásokat készíteni. A következő ablakon tovább kell lépni a „Next” gombbal.
Ki kell választani a C++ nyelvet – ez az alapértelmezett, majd megint a „Next” gomb.
Itt meg kell adni a leendő projekt nevét. Nem feltétlenül jó, ha nem angol nevet választunk. A lényeg, hogy ne legyen benne ékezet, üres hely, stb. Ez most legyen „proba”! Továbblépés a szokásos „Next” gombbal.
Itt már csak a fordítót kell kiválasztani. Az alapértelmezett kiváló lesz! Ez után viszont a főablak legnagyobb meglepetésre kiürül. Viszont a bal oldalon megjelenik egy pár új bejegyzés:
Ahogy a piros nyíl is mutatja, a Workspace\proba\Sources-ra kell kattintani. Ekkor megjelenik a main.cpp a bal oldalon. Itt a man.cpp előtti kis ikonra kattintva lehet továbblépni, így végre megjelenik az alapértelmezett „Helló, world” program!
3. fejezet: Hello, world!
Ez a bonyolultnak tűnő eljárás pár indítás után automatikus lesz, így a most még soknak tűnő lépés szinte észrevehetetlen lesz!
A programkód a következő:
---------------------------------
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}
---------------------------------
Némi magyarázat:
#include <iostream> : Ezzel még nem kell törődni!
using namespace std; : Így használhatjuk az alapvető függvényeket. Szinte minden programnál érdemes használni.
int main(): A main() függvényt minden kódnak egyszer tartalmaznia kell.
int rész : a függvény (main) típusát jelenti: egész
main : a függvény neve
() : a függvénynek nincs paramétere
{ : a program törzsének a kezdetét jelenti, tehát ez után fog jönni a program kódja.
} : a program törzsének a befejeztét jelenti, tehát itt lesz vége a programunknak vagy ez után új program blokkot (részt) kell kezdenünk.
cout << "Hello world!" << endl; : Kiírás a képernyőre, majd egy új sor. (Teljes formájában: console output.) Részletek később...
return 0; : A program futásának vége.
( Megjegyzés: a forráskódban lehetnek beszúrt üres sorok, de ez nem zavaró! )
Amint láthatjuk, minden függvénynek a végén kell lennie egy pontosvesszőnek hisz a függvényt ezzel "zárjuk le".
Természetesen nem minden programnak a megírása ilyen egyszerű, van több ezer soros program is, de mi ennyire azért nem fogunk belebonyolódni a dolgokba. -;)
Most a programot le kell fordítani és futtatni! Ez eleinte célszerű két külön lépésben megtenni. Meg kell keresni a „Build” főmenüt, majd abban a legfelső „Build” almenüt. Gyorskódja: CTRL+F9.Ez pillanatok alatt meg fog történni. Az eredmény a képernyő alján lesz látható:
Fontos! Ha az eredmény utolsó sorában a „0 errors, 0 warnings” olvasható, akkor megnyugodhatunk, hiszen minden jól ment.
Sajnos egyes esetekben előfordul, hogy a teljes CodeBlocks ablak legalján a hibafordító üzenget alul, hogy nem találja a hibafordítót. (Ezt a Build log néven találjuk.)
Ilyenkor be kell lépni a következő menübe: „Settings\Compiler and debugger\Toolchain executables”
Itt rá kell kattintani az "Auto-detect" gombra. Ezzel megtalálja a keresett helyet. Nekem pl.: D:\Program Files\CodeBlocks\MinGW
A program futtatható lesz a „Build\Run” menüvel, de lehet a gyorskóddal is indítani: CTRL+F10. A fordítás és a futtatás persze lehet egy lépésben is, ennek a gyorskódja: F9.
Még egy apróság, ami eleinte meglepő lehet: a kész program (proba.exe) mérete: 467 968 byte, tehát meglehetősen nagy. Ez csak annak köszönhető, hogy a program a teljes függvénytárat is hozzáfordítja ehhez a párt sorocskához, ami fent is látható...