C ++ ternær operatør (med eksempler)

I denne opplæringen vil vi lære om den ternære operatøren i C ++ ved hjelp av eksempler.

I C ++ kan den ternære operatøren (også kjent som den betingede operatøren ) brukes til å erstatte hvis … ellers i visse scenarier.

Ternær operatør i C ++

En ternær operatør evaluerer testtilstanden og utfører en kodeblokk basert på resultatet av tilstanden.

Dens syntaks er

 condition ? expression1 : expression2;

Her conditionblir evaluert og

  • hvis det conditioner true, expression1blir utført.
  • Og, hvis det conditioner false, expression2blir henrettet.

Den ternære operatøren tar 3 operander ( condition, expression1og expression2). Derfor navnet ternær operatør .

Eksempel: C ++ Ternary Operator

 #include #include using namespace std; int main() ( double marks; // take input from users cout <> marks; // ternary operator checks if // marks is greater than 40 string result = (marks>= 40) ? "passed" : "failed"; cout << "You " << result << " the exam."; return 0; )

Utgang 1

 Skriv inn dine karakterer: 80 Du besto eksamen.

Anta at brukeren skriver inn 80 . Deretter marks>= 40vurderes tilstanden til true. Derfor blir det første uttrykket "passed"tildelt resultatet.

Utgang 2

 Skriv inn dine karakterer: 39.5 Du klarte ikke eksamen.

Anta nå at brukeren skriver inn 39.5 . Deretter marks>= 40vurderes tilstanden til false. Derfor blir det andre uttrykket "failed"tilordnet resultatet.

Når skal jeg bruke en ternær operatør?

I C ++ kan den ternære operatøren brukes til å erstatte visse typer if… elseutsagn.

For eksempel kan vi erstatte denne koden

 #include using namespace std; int main() ( // Create a variable int number = -4; if (number> 0) cout << "Positive Number"; else cout << "Negative Number!"; return 0; )

med

 #include #include using namespace std; int main() ( int number = -4; string result; // Using ternary operator result = (number> 0) ? "Positive Number!" : "Negative Number!"; cout << result << endl; return 0; )

Produksjon

 Negativt tall!

Her gir begge programmene den samme produksjonen. Imidlertid gjør bruken av den ternære operatøren vår kode mer lesbar og ren.

Merk: Vi bør bare bruke den ternære operatøren hvis uttalelsen er kort.

Nestede ternære operatører

Det er også mulig å bruke en ternær operatør i en annen ternær operatør. Det kalles den nestede ternære operatøren i C ++.

Her er et program for å finne ut om et tall er positivt, negativt eller null ved hjelp av den nestede ternære operatoren.

 #include #include using namespace std; int main() ( int number = 0; string result; // nested ternary operator to find whether // number is positive, negative, or zero result = (number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative"); cout << "Number is " << result; return 0; )

Produksjon

 Antall er null

I eksemplet ovenfor, legg merke til bruken av ternære operatører,

 (number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative");

Her,

  • (number == 0)er den første testtilstanden som sjekker om tallet er 0 eller ikke. Hvis det er det, tildeler det strengverdien som "Zero"skal resultat.
  • Ellers blir den andre testtilstanden (number> 0)evaluert hvis den første tilstanden er false.

Merk : Det anbefales ikke å bruke nestede ternære operatører. Dette er fordi det gjør koden vår mer kompleks.

Interessante artikler...