English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ Tutoriel de base

C++ Contrôle de flux

C++ Fonction

C++ Tableau & Chaîne

C++ Structure des données

C++ Classe & Objet

C++ Pointeur

C++ Héritage

C++ STL tutoriel

C++ manuel de référence

C++ opérateur conditionnel ? :

C++ Opérateurs

Exp1 ? Exp2 : Exp3;

où, Exp1et Exp2 et Exp3 est une expression. Notez l'utilisation et la position des points-virgules. La valeur de l'expression ? : dépend de Exp1 le résultat de la computation. Si Exp1 est vrai, alors calculer Exp2 valeur, et si Exp2 le résultat de la computation est la valeur de l'expression ? : complète. Si Exp1 est faux, alors calculer Exp3 valeur, et si Exp3 le résultat de la computation est la valeur de l'expression ? : complète.

? est appelé opérateur ternaire, car il nécessite trois opérandes, et peut être utilisé pour remplacer un if-else statement :

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

Par exemple, regardez ce morceau de code ci-dessous :

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

Le code ci-dessus peut être réécrit en suivant ces instructions :

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

Ici, si y est inférieur à 10alors var est assignée la valeur 30, si y n'est pas inférieur à 10alors var est assignée la valeur 40. Voir l'exemple suivant :

#include <iostream>
using namespace std;
 
int main ()
{
   // Déclaration de variables locales
   int x, y = 10;
 
   x = (y < 10) ? 30 : 40;
 
   cout << "La valeur de x: " << x << endl;
 
   return 0;
}

Lorsque le code suivant est compilé et exécuté, il produit les résultats suivants :

La valeur de x: 40

C++ Opérateurs