2.5.1 Yksinkertainen ehtolause (if)

Tähän saakka kirjoitettujen funktioiden suoritus eteni lause lauseelta aina ensimmäisestä lauseesta viimeiseen. Silloin tällöin törmätään ongelmiin, joihin ei ole olemassa yhtä yksikäsitteistä menettely- tai ratkaisutapaa, vaan useampia tapauskohtaisia vaihtoehtoja, joista kussakin tilanteessa joudutaan valitsemaan jonkin ehdon nojalla parhaiten sopiva vaihtoehto.

Tällaisia ongelmatilanteita varten on olemassa ehtolause, jonka muoto C++-kielessä on

if (ehto) lause;

Ehtolauseessa esiintyvä ehto on looginen lauseke, jolla on tasan kaksi arvoa, joko tosi (true) tai epätosi (false). Ehdon jäljessä oleva lause suoritetaan vain, jos ehto on tosi. Jos ehto on epätosi, jatketaan ohjelman suoritusta ehtolausetta seuraavasta lauseesta.

C++-kielessä ei ole määritelty totuusarvoista tietotyyppiä, vaan totuusarvoina käytetään kokonaislukuja. Kokonaislukuarvo 0 vastaa arvoa false ja muut lukuarvot arvoa true.

Kuten aiemmin on jo mainittu, voi C++:ssä lauseen korvata aina lohkolla, joka on kokoelma useammasta lauseesta. Näin ollen voidaan luoda kokonaisia annetusta ehdosta riippuvia toimenpidesarjoja:

if (ehto) {
 lause1;
 lause2;
 ...
}

Tässä siis lohkon lauseet suoritetaan vain, jos ehto on tosi.

C++-kielen ehtolause on muotoa if (ehto) lause;
Ehdon totuusarvo osoitetaan kokonaisluvulla:
0 = epätosi
muut luvut = tosi