Latest web development tutorials

C ++ Konditionaloperator ?:

C ++ Operator C ++ Operator

Exp1 ? Exp2 : Exp3;

Wobei Exp1, Exp2 und exp3 Ausdruck. Bitte beachten Sie die Verwendung des Dickdarms und der Lage. ?: Expression hängt von dem Wert des Berechnungsergebnisses Exp1. Wenn Exp1 wahr ist, dann wird der berechnete Wert Exp2 Berechnungsergebnisse und die gesamte Exp2 :? Expression verglichen. Wenn Exp1 falsch ist, berechnet sich der Wert exp3 und im Vergleich mit den Ergebnissen exp3 ganze :? Expression.

? Ist der ternäre Operator genannt, weil es drei Operanden erfordert, wie weiter unten if-else-Anweisung verwendet werden kann, anstatt gezeigt:

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

Betrachten wir zum Beispiel den folgenden Code:

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

Der obige Code kann in der folgenden Anweisung geschrieben werden:

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

Hier wird, wenn y kleiner als 10 ist, dann wird var 30 zugeordnet ist, wenn y nicht kleiner als 10 ist, dann wird var 40 zugeordnet. Betrachten Sie die folgenden Beispiele:

#include <iostream>
using namespace std;
 
int main ()
{
   // 局部变量声明
   int x, y = 10;

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

   cout << "value of x: " << x << endl;
 
   return 0;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

value of x: 40

C ++ Operator C ++ Operator