📜  C C++中的条件或三元运算符(?:)(1)

📅  最后修改于: 2023-12-03 14:59:36.390000             🧑  作者: Mango

条件运算符(?:)在C/C++中的使用

简介

条件运算符,也叫三元运算符,是C/C++中的一种操作符,形式为表达式1 ? 表达式2 : 表达式3。其作用是判断表达式1的值是否为真,若为真则返回表达式2的值,否则返回表达式3的值。

语法
表达式1 ? 表达式2 : 表达式3

其中,表达式1必须是一个能够返回布尔值的表达式,如a > b。表达式2和表达式3可以是任何类型的表达式,但必须类型一致或可以做隐式类型转换。

示例
#include <iostream>
using namespace std;

int main()
{
    int a = 3, b = 5;
    int max_num = (a > b ? a : b);
    cout << "Max number is: " << max_num << endl;
    return 0;
}

输出:

Max number is: 5

上述代码演示了如何使用条件运算符求两个数的最大值。首先比较a和b的大小,若a>b,则返回a,否则返回b。

注意事项
  • 表达式2和表达式3必须类型一致或可以做隐式类型转换。
  • 条件运算符优先级较低,使用时要注意加括号控制优先级。
  • 嵌套使用时,可以使代码更简洁,但也会降低代码的可读性,需要慎重使用。
  • 对于复杂的运算,建议使用if/else语句替代。