Nyomtatás

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.

C++ download

A feljövő ablakban a „Download the binary release” feliratra kell kattintani.

C++ download 2

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.

C++ download 3

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ő.

C++ install 1

A Next gomb lenyomása után jöhet a licensz-szerződés elolvasása.

C++ install 2

Ezt el kell fogadni (I Agree), majd jön a komponensek beállítása, bár ezt nem célszerű változtatni!

C++ install 3

A következő lépésben meg kell adni, hogy hová legyen felrakva a program. Alapesetben a jól ismert „Program Files” bukkan fel.

C++ install 4

A tényleges installálás alig egy perc egy átlagos gépen...

C++ install 5

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...

C++ install 6

… mivel szeretem látni, hogy akar-e valamit még a telepítő? Nos, ezúttal szerencsére semmit nem szeretne!

C++ install 7

A „Next” gomb a kilépésig juttat el.

C++ install vége

Ekkor már tudjuk futtatni a szokásos módon a CodeBlocks programot!


2. fejezet: Legelső futtatás

C++ logoTö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ó.

 

C++ 1. futtatás #1

Ez után a teljes képernyő nyílik meg, ami első pillanatra elég bonyolultnak látszik, de nem kell tőle megijedni!

C++ képernyő 1

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:

C++ file associations

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:

C++ képernyő 2

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:

C++ képernyő 3

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.

C++ képernyő 4

Ki kell választani a C++ nyelvet – ez az alapértelmezett, majd megint a „Next” gomb.

C++ képernyő 5

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.

C++ képernyő 6

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:

C++ képernyő 7

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!

C++ képernyő 8

 


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ó:

C++ képernyő 9

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ó...

Folytatás itt!