Ideme sa pustiť na náš prvý program, ktorý sa, ako vždy, bude volať „Ahoj svete!“.
Vývojový cyklus
Keby každý program fungoval hneď na prvýkrát, bol by to úplný vývojový cyklus.
Vývojový cyklus vyzerá takto:
- napísanie zdrojového kódu
- kompilácia zdrojového kódu
- zostavenie programu
- spustenie programu
Bohužiaľ, pomaly každý program, aj jednoduchý, môže mať chyby. Niektoré z nich budú spôsobené kompiláciou, iné pri zostavovaní programu. A niektoré sa prejavia až pri spustení programu. Bez ohľadu na typ chyby ju musíte odstrániť a potom zas skompilovať, zostaviť a spustiť program.
Prvý program v C++
V každom kurze sa začína programom, ktorý na obrazovku vypíše jednoduchú vetu ako napríklad: „Ahojte Ľudia!“ a my si to napíšeme tiež. A tu máme jeho kód:
A tu výsledok:
Tento kód je zámerne zadaný ako obrázok, lebo chcem každého z vás donútiť, aby si ho vlastnoručne prepísal. Tým dostanete do prstov ten správny rytmus :-). Dbajte na to, aby ste všetko napísali tak, ako to vidíte. Mali by ste sa riadiť pokynmi kompilátoru, napríklad v Visual Studiu musíte najprv kód uložiť a potom stlačiť Compile (skompilovať), ako ukazujem na tomto obrázku:
Tým pádom sa vám program skompiloval a môžeme program zostaviť:
A spustí sa sám automaticky:
Chyby pri kompilácii
K chybám počas kompilácie môže dôjsť z mnohých dôvodov. Väčšinou sa jedná o neúmyselnú chybu ako preklep alebo zabudneme dať bodkočiarku (;). Dobrý kompilátor vám oznámi, akú chybu ste spravili, ale hlavne, kde ste ju spravili. Vyskúšame si to tak, že do nášho programu si spravíme úmyselnú chybu:
Dáme to skompilovať a ukáže nám takúto chybu:
Táto správa nás informuje o súbore a čísle riadku, kde sa stala chyba a snaží sa ho identifikovať, ale keby to kompilátor zvládol sám, tak by si kód opravil aj bez nás :-).
Funkcia main()
Funkcia main() je neobvyklá funkcia, ktorá je základom každého programu. Je to úsek kódu, ktorý pracuje s jednou alebo viacerými akciami, funkcie sú väčšinou zavolané inými funkciami alebo funkciou main(). Ale iba funkciu main() volá operačný systém. Ako každá funkcia, musí vracať celočíselnú hodnotu, ktorá bola v našom prípade hodnota 0, čo znamená, že táto funkcia skončila svoj chod. Celé telo funkcie main() začína int main() a ako každá funkcia, musí mať svoju deklaráciu &ndash miesto, kde je prvýkrát spomenutá &ndash to vám lepšie objasním pri ďalších lekciách. Začiatok a koniec tela funkcie je ohraničený { a }, ale telo sa musí končiť bodkočiarkou, ako to vidíte na obrázkoch.
Komentáre
Keď program píšete, je vám jasné, čo robíte, ale keď sa k nemu vrátite o mesiac alebo dva, môže sa vám zdať neprehľadný alebo úplne nečitateľný. Aby sme sa vyhli takýmto nepríjemnostiam, naučíme sa používať komentáre. Čiže je to text, ktorý kompilátor úplne ignoruje. Existujú dva typy komentárov:
- Komentáre na jeden riadok (tj. od znaku // na koniec riadku)
- Komentáre blokové, ktoré sú ohraničené dvoma znakmi (tj. začiatok komentáru /* a koniec komentáru */)
Ukážeme si to na názornom príklade:
Komentáre by sa mali využívať pri každej funkcii pre jej vysvetlenie, aby ste aj o niekoľko mesiacov vedeli, čo ste tou a inou funkciou chceli urobiť, alebo aby bol kód zrozumiteľný pre iných programátorov.
Anatómia programu
Programy C++ sú zložené z objektov, funkcií, premenný a ďalších komponentov. Ak chcete vedieť, ako to celé funguje, musíte sa pozrieť na celý program. Tak sa k nemu vráťte a celý si ho rozoberieme. Hneď prvý znak # (volá sa „haš“) je signál pre preprocesor (je to časť kompilátora, ktorá spracuváva zdrojový kód), ktorý s týmto riadkom pracuje ako s prvým. Funkcia include preprocesoru hovorí, že to, čo ide za ním, je súbor, ktorý má nájsť a vložiť ho na miesto, kde sa nachádza. Čiže preprocesor bude hladať súbor iostream pri súboroch, ktoré uchováva kompilátor na operácie s premennými.
Ďalej nám nasleduje funkcia main(), o ktorej sme už hovorili. V jej tele sa nachádza príkaz std::cout<<, ktorý píše na obrazovku. Práve tento príkaz patrí už spomínanému súboru iostream. cout sa používa výhradne s << (ale pozor, musia byť dve!), za ktorými dáme"a napíšeme text, ktorý chceme zobraziť na obrazovke". Nakoniec std je názov knižnice, v ktorej sa cout nachádza. Ďalej je tu return a to som už tiež spomínal, je to návratová hodnota funkcie main(), ktorá je v tomto prípade 0, čiže koniec funkcie a zároveň aj programu.
Domáca úloha
› Pozrite sa na tento kód a napíšte mi, čo robí, a skúste ho rozobrať:
› Druhá úloha bude taká, aby ste mi napísali program, ktorý vypíše nejakú vetu alebo frázu. Medzi to chcem použiť komentáre a aby tam bolo aspoň 5 riadkov. Najlepšie by bolo niečo o sebe (meno, vek, práca…).
Ale už si môžete povedať jednu základnu vetu: „Som programátor C++“ :-)