De betinget operatør i C er på en måte lik if-else-setningen ettersom den følger samme algoritme som if-else-setningen, men den betingede operatoren tar mindre plass og hjelper til med å skrive if-else-setningene på kortest mulig måte. Det er også kjent som ternær operatør i C ettersom den opererer på tre operander.
Syntaks for betinget/ternær operatør i C
Den betingede operatøren kan være i skjemaet
variable = Expression1 ? Expression2 : Expression3 ;>
Eller syntaksen kan også være i denne formen
variable = (condition) ? Expression2 : Expression3 ;>
Eller syntaks kan også være i denne formen
(condition) ? (variable = Expression2) : (variable = Expression3) ;>

Betinget/ternær operatør i C
Det kan visualiseres i en if-else-setning som:
if(Expression1) { variable = Expression2; } else { variable = Expression3; }> Siden den betingede operatøren '?:' tar tre operander for å fungere, kalles de derfor også ternære operatører .
Merk: Den ternære operatøren har tredje laveste prioritet, så vi må bruke uttrykkene slik at vi kan unngå feil på grunn av feil styring av operatørprioritet.
Arbeid av betinget/ternær operatør i C
Arbeidet til den betingede operatøren i C er som følger:
- Trinn 1: Uttrykk1 er tilstanden som skal evalueres. Trinn 2A: Hvis tilstanden( Uttrykk 1 ) er sant da Uttrykk 2 vil bli utført. Trinn 2B : Hvis tilstanden( Uttrykk 1 ) er falsk da Uttrykk 3 vil bli utført. Trinn 3: Resultatene vil bli returnert.
Flytskjema for betinget/ternær operatør i C
For å forstå hvordan det fungerer bedre, kan vi analysere flytskjemaet for den betingede operatøren gitt nedenfor.
delstreng av streng java

Flytskjema for betinget/ternær operatør i C
Eksempler på C ternær operatør
Eksempel 1: C Programmer for å lagre det største av de to tallene ved å bruke den ternære operatoren
C
// C program to find largest among two> // numbers using ternary operator> > #include> > int> main()> {> >int> m = 5, n = 4;> > >(m>n) ?>printf>(>'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;> }> |
>
>Produksjon
m is greater than n that is 5>4>
Eksempel 2: C Program for å sjekke om et år er et skuddår ved å bruke ternær operatør
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> |
>
>Produksjon
The year 1900 is not a leap year>
Konklusjon
Den betingede operatoren eller ternære operatoren i C brukes vanligvis når vi trenger en kort betinget kode, for eksempel å tilordne verdi til en variabel basert på betingelsen. Det kan brukes under større forhold, men det vil gjøre programmet svært komplekst og uleselig.
Vanlige spørsmål om betingede/ternære operatører i C
1. Hva er den ternære operatoren i C?
Den ternære operatoren i C er en betinget operator som fungerer på tre operander. Den fungerer på samme måte som if-else-setningen og kjører koden basert på den angitte tilstanden. Det kalles også betinget operatør
2. Hva er fordelen med den betingede operatøren?
Det reduserer kodelinjen når tilstanden og setningene er små.