The ehdollinen operaattori C:ssä on tavallaan samanlainen kuin if-else-lause, koska se noudattaa samaa algoritmia kuin if-else-lause, mutta ehdollinen operaattori vie vähemmän tilaa ja auttaa kirjoittamaan if-else-lauseet lyhyimmällä mahdollisella tavalla. Se tunnetaan myös nimellä kolmiosainen operaattori C:ssä koska se toimii kolmella operandilla.
Ehdollisen/Ternaarisen operaattorin syntaksi C:ssä
Ehdollinen operaattori voi olla muodossa
variable = Expression1 ? Expression2 : Expression3 ;>
Tai syntaksi voi olla myös tässä muodossa
kuinka pistää pilkata abstrakti luokka
variable = (condition) ? Expression2 : Expression3 ;>
Tai syntaksi voi olla myös tässä muodossa
(condition) ? (variable = Expression2) : (variable = Expression3) ;>

Ehdollinen/kolmiomainen operaattori C:ssä
Se voidaan visualisoida if-else-lauseeksi seuraavasti:
if(Expression1) { variable = Expression2; } else { variable = Expression3; }> Koska ehdollinen operaattori '?:' ottaa käyttöön kolme operandia, niitä kutsutaan myös kolmiosaiset operaattorit .
Huomautus: Kolmannella operaattorilla on kolmanneksi alhaisin prioriteetti, joten meidän on käytettävä lausekkeita siten, että voimme välttää virheellisen operaattorin ensisijaisuuden hallinnan aiheuttamat virheet.
Ehdollisen/Ternaarisen operaattorin työskentely C:ssä
Ehdollisen operaattorin toiminta C:ssä on seuraava:
- Vaihe 1: Lauseke1 on arvioitava ehto. Vaihe 2A: Jos ehto ( Ilmaisu 1 ) on sitten totta Ilmaisu 2 teloitetaan. Vaihe 2B: Jos ehto ( Ilmaisu 1 ) on silloin väärä Ilmaisu 3 teloitetaan. Vaihe 3: Tulokset palautetaan.
Vuokaavio ehdollisista/kolmeista operaattorista C:ssä
Ymmärtääksemme toimintaa paremmin voimme analysoida alla olevan ehdollisen operaattorin vuokaavion.

Vuokaavio ehdollisesta/kolmiosaisesta operaattorista C:ssä
100 km/h - mph
Esimerkkejä C-kolmiooperaattorista
Esimerkki 1: C Ohjelma tallentaa kahdesta numerosta suurimman käyttämällä kolmiosaista operaattoria
C
// C program to find largest among two> // numbers using ternary operator> > #include> > int> main()> {> >int> m = 5, n = 4;> > >(m>n) ?>>'m is greater than n that is %d>%d'>,> >m, n)> >:>printf>(>'n is greater than m that is %d>%d'>,> >n, m);> > >return> 0;> }> |
>
>
muuntaa merkkijono intergeriksiLähtö
m is greater than n that is 5>4>
Esimerkki 2: C Ohjelma tarkistaa, onko vuosi karkausvuosi kolmioperaattorilla
C
// C program to check whether a year is leap year or not> // using ternary operator> > #include> > int> main()> {> >int> yr = 1900;> > >(yr%4==0) ? (yr%100!=0?>printf>(>'The year %d is a leap year'>,yr)> >: (yr%400==0 ?>printf>(>'The year %d is a leap year'>,yr)> >:>printf>(>'The year %d is not a leap year'>,yr)))> >:>printf>(>'The year %d is not a leap year'>,yr);> >return> 0;> }> > //This code is contributed by Susobhan AKhuli> |
>
>Lähtö
The year 1900 is not a leap year>
Johtopäätös
Ehdollista operaattoria tai kolmiosaista operaattoria C:ssä käytetään yleensä, kun tarvitsemme lyhyttä ehdollista koodia, kuten arvon määrittämistä muuttujalle ehdon perusteella. Sitä voidaan käyttää isommissa olosuhteissa, mutta se tekee ohjelmasta erittäin monimutkaisen ja lukukelvottoman.
c++ jakomerkkijono
Usein kysytyt kysymykset ehdollisista/ternary-operaattoreista C
1. Mikä on kolmiosainen operaattori C:ssä?
Kolmiosainen operaattori C:ssä on ehdollinen operaattori, joka toimii kolmella operandilla. Se toimii samalla tavalla kuin if-else-käsky ja suorittaa koodin määritetyn ehdon perusteella. Sitä kutsutaan myös ehdolliseksi operaattoriksi
2. Mikä on ehdollisen operaattorin etu?
Se vähentää koodiriviä, kun ehto ja lauseet ovat pieniä.