C++ Conditional ? : Operator



Exp1 ? Exp2 : Exp3;

where Exp1, Exp2, and Exp3 are expressions. Notice the use and placement of the colon. The value of a ? expression is determined like this: Exp1 is evaluated. If it is true, then Exp2 is evaluated and becomes the value of the entire ? expression. If Exp1 is false, then Exp3 is evaluated and its value becomes the value of the expression.

The ? is called a ternary operator because it requires three operands and can be used to replace if-else statements, which have the following form −

if(condition) {
   var = X;
} else {
   var = Y;
}

For example, consider the following code −

if(y < 10) { 
   var = 30;
} else {
   var = 40;
}

Above code can be rewritten like this −

var = (y < 10) ? 30 : 40;

Here, x is assigned the value of 30 if y is less than 10 and 40 if it is not. You can the try following example −

#include <iostream>
using namespace std;
 
int main () {
   // Local variable declaration:
   int x, y = 10;

   x = (y < 10) ? 30 : 40;
   cout << "value of x: " << x << endl;
 
   return 0;
}

When the above code is compiled and executed, it produces the following result −

value of x: 40
Advertisements
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy