You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Tekstin tulostus ja lukeminen

C-kielessä tämä toteutettin printf() ja scanf() -funktioiden avulla. C++ taas on oliokieli, joten on luonnollista että tekstin tulostus ja lukeminen käyttäjältä on toteutettu olioilla. C++ tarjoaa iostream-headerissa oliot cout, cin ja cerr. Näiden avulla voidaan tulostaa ruudulle tekstiä.

Etuna cout ja cin-olioiden käyttöllä on, että ne tuntevat tietotyypit, mitä niille annetaan. Tämä tarkoittaa, ettei ohjelmoijan enään tarvitse muistaa kaikkia %s, %d, jne tulostusmääreitä. Lisäksi voidaan toteuttaa omaan luokkaan oma operaattori <<, mutta siitä lisää myöhemmin.

Esimerkki 1: Tekstin syöttö ja tulostus.

#include <iostream>
#include <string>

using namespace std; // Tarvitaan, sillä tässä nimiavaruudessa on määritelty cin ja cout.

int main()
{
    string nimi, sukunimi;
    int ID;

    // Syötteen lukeminen käyttäjältä:
    cout << "anna etunimesi: ";
    cin >> nimi;

    cout << "anna sukunimesi: ";
    cin >> sukunimi;

    cout << "anna ID numero ";
    cin >> ID;

    // Tulostus ruudulle:
    cout << "Terve " << nimi << " " << sukunimi <<", ID:si on " << ID << endl;

    return 0;
}
Esimerkki 2: lukujen näyttö eri lukujärjestelmissä.

#include <iostream>

using namespace std; // Tarvitaan, sillä tässä nimiavaruudessa on määriteltu cin ja cout.

int main()
{
    int Arvo = 0;
    cout << "ANNA JOKIN LUKU: ";
    cin >> Arvo;
    do

{    cout << "Oletus: " << Arvo << endl;

      cout << "Desimaali: " << dec << Arvo << endl;

      cout << "Oktaali: " << oct << Arvo << endl;

      cout << "Heksa: " << hex << Arvo << endl;  // showbase näyttää heksa ja oktalukujen etuliitteet

      cout << "Heksa ja oktaluvut etuliitteen kanssa:" << showbase << endl;       

      cout << "Dec: " << dec << Arvo << endl;  

      cout << "Oktaali: " << oct << Arvo << endl;  

      cout << "Heksa: " << hex << Arvo << endl;      

      cout << "ja takaisin" << noshowbase << endl;       

      cout << "ANNA JOKIN LUKU: ";
      cin >> Arvo;     }

while (Arvo != 1 && Arvo != 0);

return 1;
}


  • No labels
You must log in to comment.