C/C++ 三元運算子


三元運算子的語法如下 −

(expression-1) ? expression-2 : expression-3

此運算子根據一個表示式的結果返回兩個值中的一個。如果“表示式-1”求值為布林真值,則求值表達-2 並將其值返回為最終結果,否則求值表達-3 並將其值返回為最終結果。

示例

我們編寫一個程式,使用三元運算子求兩個數字中的最大值。

 線上演示

#include <iostream>
using namespace std;
int main() {
   int a = 10;
   int b = 20;
   int max = a > b ? a : b;
   cout << "Maximum value = " << max << "\n";
   return 0;
}

如果我們將三元運算子的語法與上面示例進行比較,則 −

  • 表示式-1 是 (a > b)
  • 表示式-2 是 a
  • 表示式-3 是 b

首先,求值表示式 a > b,它求值為布林假值,因為變數 'a' 的值小於變數 'b' 的值。因此,變數 'b'(即 '20')的值被返回,它變為最終結果並被賦值給變數 'max'。

輸出

當你編譯並執行上述程式碼時,它將生成以下輸出 −

Maximum value = 20

更新於:2019 年 9 月 26 日

5000+ 瀏覽

開啟你的職業生涯

完成課程可獲得認證

開始入門
廣告