C++ OHJELMOINTI

Oppaan C-ohjelmointi osassa ohjelmakoodi-tiedoston tiedostopääte oli .c . C++ -ohjelmakoodin tiedosto pääte on .cpp (eri valmistajien tiedostopäätteet saattavat poiketa mainitusta).
C++ ohjelmointi kielissä on jotkin asiat ovat muuttuneet kielen kehittämisen yhteydessä sekä ohjelmien kehitysympäristöt eli kääntäjät ”hyväksyvät” keskenään hieman erityyppisiin formaatteihin kirjoitettua C++-kieltä.

Vanhemman tyyppiset C++ kääntäjät hyväksyvät alkuperäisen ohjelmointikielen kieliopin mukaisen ohjelma koodin:

/* Ohjelma tulostaa näytölle tekstin cout-funktiolla*/ #include <iostream.h> #include <conio.h> int main() { cout << "Ohjelma tulostaa lainausmerkkien väliin kirjoitetun." << endl; getch(); return 0; }


Oppaan esimerkeissä käytetty Dev C++ -kääntäjä ei yllä olevaa hyväksy, vaan ohjelma on kirjoitettava uudemman "kieliopin" ja nimiavaruus muutoksen sekä kääntäjänkin takia seuraavalla tavalla:

/* Ohjelma tulostaa näytölle tekstin cout-funktiolla*/ #include <iostream> using namespace std; int main() { cout << "Ohjelma tulostaa lainausmerkkien väliin kirjoitetun." << endl; cin.get(); return 0; }




Ensimmäisen C++ -ohjelman osat

Kommentti

Ohjelmointija voi kirjoittaa ohjelmakoodaukseen kahdella tavalla muistiinpanoja eli kommentteja. Komennetteja voi käyttää myös ohjelmakoodissa koodirivien ja funktioiden poistamiseen käytöstä mikäli käytöstä poistettava rakenne halutaan säilyttää.

Ohjelmoitsijan kirjoittama kommentti, tämä sopii hyvin pitkän usealle riville ulottuvan kommenttin kirjoittamiseen. Kommentti kirjoitetaan merkkiyhdistelmän/* ja */ väliin: /* Ohjelma tulostaa näytölle tekstin cout-funktiolla */ Toisen tyyppinen kommentti, yhdelle riville kommenttin kirjoittamiseen: // Ohjelma tulostaa näytölle tekstin cout-funktiolla




Esikäsittelysäännöt

Ohjelmankehitys-ympäristölle eli kääntäjälle ”kerrotaan” eli ilmoitetaan aivan ensimmäisillä #include - riveillä missä kääntäjän tiedostoissa ohjelmassa käytetyt käskyt eli funktiot sijaitsevat. Yksinkertaistetusti, #include-riveillä saadaan ohjelmaa kirjoitettaessa ohjelmoitsaijan käyttöön valmisfunktio-valikoima. Näitä tiedostoja löytyy kääntäjistä useita ja niihin on koottu eri tarkoituksiin käytettäviä funktioita.

Aiemmin esikäsittelysäännöissä käytettiin .h päätettä (tiedostonimi.h), uuden mallin mukaisesti päätettä ei enään tarvitse kirjoittaa. Esimerkissä iostream-tiedostolla ilmoitetaan ohjelmassa käytettävän IO-komentoja, näppäimistöllä annetun tiedon lukua sekä näytölle tiedon tulostamista.

Toinen muutos aiempiin C++ versioihin on ohjelman alussa oleva ilmoitus using namespace std, ilmoituksella sidotaan joukoksi tietty joukko nimiä, nimiavaruudeksi jonka nimi on std. Nimiavaruuden edut tulevat tulevat esille suuremmissa ohjelmistokokonaisuuksissa joissa nimiavaruuksien paketoinni avulla vältytään ongelmilta.

/* Ohjelma tulostaa näytölle tekstin cout-funktiolla*/ #include <iostream> using namespace std; int main() { cout << "Ohjelma tulostaa lainausmerkkien väliin kirjoitetun." << endl; cin.get(); return 0; }



Pääohjelma

C++ -kielessä kuten C-kielessäkin löytyy ns pääohjelma. Oppaan alkuosassa pääohjelmaan koodataan pieniä esimerkkiohjelmia ohjelmarekenteiden esittelyä sekä testausta varten. Käynnistettäessä ohjelma käyttöjärjestelmä kutsuu pääohjelmaa eli käynnistää pääohjelman. Toinen pääohjelman tehtävä on huolehtia ohjelman sulkemisesta, joko automaattisesti suorituksen päätteeksi tai ohjelman käyttäjän halutessa sulkea ohjelma.

Esimerkki-ohjelmassa käytetään int main () ilmoitusta kertomaan pääohjelman alkamisesta. Varsinainen pääohjelman suorittama tehtävä kirjoitetaan aaltosulkeiden väliin.

/* Ohjelma tulostaa näytölle tekstin cout-funktiolla*/ #include <iostream> using namespace std; int main() { cout << "Ohjelma tulostaa lainausmerkkien väliin kirjoitetun." << endl; cin.get(); return 0; }



Varsinainen ohjelma-koodi

Esimerkin varsinaisessa ohjelmakoodissa tulostetaan cout-funktion avulla näytölle lainnausmerkkien väliin kirjoitettu teksti välilyönteineen. Rakenne:

cout << " Näytöllä näytettävä teksti";

Näytölle tulostuvaan tekstiin saadaan aikaan rivinvaihto komennolla:

<< endl;

Ohjelman suorittamisen pysäyttämiseksi käytetään funktio-yhdestelmärakennetta:

cin.get();

Ohjelman lopussa ilmoitetaan "ettei ohjelmasta siirretä tietoa muualle", rakenne:

return 0;

/* Ohjelma tulostaa näytölle tekstin cout-funktiolla*/ #include <iostream> using namespace std; int main() { cout << "Ohjelma tulostaa lainausmerkkien väliin kirjoitetun." << endl; cin.get(); return 0; }



Näytä teksti, cout

Näytöllä esitettävien asioiden tulostamiseen käytetään cout -funtioita. Näytöllä voidaan näyttää cout-funktiolla numeroita, kirjaimia ja merkkejä (esimerkeissä punaisella):

cout << "Näytöllä näkyvä teksti. Numeroita (1 2 3) tai merkkejä (# £ @ +)"; Yllä, tulostuisi näytölle teksti: Näytöllä näkyvä teksti. Numeroita (1 2 3) tai merkkejä (# £ @ +) cout << "Rivinvaihto tehdään: \n -merkeillä tai << endl -merkeillä." << endl; Yllä, tulostuisi näytölle teksti: Rivinvaihto tehdään: -merkeillä tai << endl -merkeillä. cout << "Muuttujan arvo on " << luku << " ja teksti jatkuu.."; Yllä, jos luku = 5, tulostuisi näytölle teksti: Muuttujan arvo on 5 ja teksti jatkuu..



Lue ohjelmaan, cin

Ohjelmaan ohjelman käyttäjä antaa tietoa näppäimistöltä, tällöin annattu tieto luetaan muuttujaan tai taulukkoon cin-funktiolla.

cin >> luku;