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
广告