Siis: Loogisen lausekkeen evaluoiminen lopetetaan heti kun ehdon arvo selviää (boolean expression shortcut).
Esimerkiksi:
if ( a || ( (b=c)==0 ) ) printf("Kukkuu\n");Tai- operaattorin (||) oikealla puolella oleva sijoitus suoritetaan vain mikäli a==0:
a
|
b
|
c
|
sij.suor
|
tulostetaan
|
||
0 0 5
5
|
? ? ?
?
|
0 3 0
3
|
kyllä kyllä ei
ei
|
kyllä ei kyllä
kyllä
|
while ( f && f >> luku ) summa += luku;Tällöin lopussa olevaa tiedostoa ei enää lueta, koska AND- operaation (&&) arvo voidaan päättää epätodeksi heti ensimmäisestä osalauseesta. Tosin edellinen silmukka toimii myös muodossa
while ( f >> luku ) summa += luku;