跳轉到內容

程式設計基礎/條件運算子

來自華夏公益教科書,自由的教科書

介紹 C++ 程式語言中使用的條件運算子。

條件運算子是獨一無二的,因為它具有三個運算元,由兩個未連線的運算子符號隔開。所有其他 C++ 運算子要麼是一元的(一個運算子和一個運算元),要麼是二元的(一個運算子和兩個運算元)。在“C++ 運算子的縮寫優先順序表”中,條件運算子的註釋列中寫著“三元”。這個字首“三”表示三個,因此三個運算元。

表 1
C++ 運算子 含義 註釋
條件 三元 - 三個運算元,兩個運算子

作為運算子,它為表示式生成一個值。解釋條件運算子的一種簡單方法是使用條件運算子將“if then else”控制結構轉換為表示式。

示例 1:if then else

[編輯 | 編輯原始碼]
if (age > 17)
{
  cout << "You can vote.";
}
else
{
  cout << "You can’t vote.";
}

示例 2:條件 = 選項 1

[編輯 | 編輯原始碼]
age > 17 ? cout << "You can vote." : cout << "You can’t vote.";

示例 3:條件 = 選項 2

[編輯 | 編輯原始碼]
cout << (age > 17 ? "You can vote." : "You can’t vote.");

由於運算子的優先順序,需要使用圓括號。條件表示式優先順序低於插入(寫入)運算子。

第一個運算元是一個測試表達式,類似於控制結構中控制程式流的那些表示式。這種型別的表示式也稱為布林表示式,因為它們會產生真或假的布林答案。如果測試為真,則第二個運算元成為表示式的值。如果為假,則第三個運算元成為表示式的值。問號和冒號運算子隔開了三個運算元。

示例 4:通用格式

[編輯 | 編輯原始碼]
test expression ? expression true : expression false
條件
一個三元 C++ 運算子,其作用類似於 if then else 控制結構。
華夏公益教科書