C/C++中的三元運算子
需要三個運算元運算子被稱為三元運算子。它可以用“? :”來表示。它也被稱為條件運算子。該運算子提高了效能並減少了程式碼行數。
以下是 C 語言中三元運算子的語法
Expression1 ? Expression2 : Expression3
以下是 C 語言中三元運算子的一個示例
示例
#include <stdio.h> int main() { int a = -1; double b = 26.4231; int c = a? printf("True value : %lf",b):printf("False value : 0"); return 0; }
輸出
True value : 26.423100
Expression1 將始終求值,而 expression2 和 expression3 則取決於 expression1 的結果。如果 expression1 的結果為非零或負數,則將顯示 expression2,否則將顯示 expression3。
三元運算子具有返回型別。返回型別取決於 expression2,還取決於 expression3 轉換為 expression2 的可轉換性。如果它們不可轉換,編譯器將丟擲錯誤。
以下是 C 語言中三元運算子的另一個示例
示例
#include <stdio.h> int main() { int x = -1, y = 3; double b = x+y+0.5; int c = x<y? printf("True value : %lf",b):printf("False value : 0"); return 0; }
輸出
True value : 2.500000
廣告