位置:首頁 > 高級語言 > C++教學 > C++ ?:條件操作符

C++ ?:條件操作符

Exp1 ? Exp2 : Exp3;

在這裡,計算Exp1,Exp2和EXP3是表達式。注意冒號使用和放置。 a的值?表達是確定這樣的:計算Exp1評估計算。如果這是真的,那麼Exp2後進行評估計算,並成為整個值。?表達式。如果計算Exp1是假的,那麼EXP3評價和它的值變為表達式的值。

? 稱為三元運算,因為它需要三個操作數,並且可以用來代替if-else語句,它具有下列形式:

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

例如,請考慮下麵的代碼:

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

上麵的代碼可以寫成這樣:

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

這裡,x被賦值為30,如果y小於10,如果它不是則賦值為40。可以試試下麵的例子:

#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;
}

當上述代碼被編譯和執行時,它產生了以下結果:

value of x: 40