0


C语言条件运算符(?:)的使用

(个人临时总结,知识点不完全,仅供参考,不喜轻喷)

条件运算符(?:)需要三个操作数,所以也称三元运算符

操作式如下:

【条件】? 【表达式1】:【表达式2】

根据条件的计算结果,决定要计算两个表达式中的哪一个

如果条件为true(即计算结果不为0),计算表达式1;条件为false,计算表达式2。所得出的值就是整个表达式的结果。

举一个在赋值运算中的常见例子:假设给一个数组赋值,下标为偶数的赋值true,下标为奇数的赋值false

如果用if-else语句:

for (int i = 0; i <= 49; i++)
{
    if (i % 2 == 0) { vector[i] = true;}
    else { vector[i] == false; }
}

用(?:)运算符:

for (int i = 0; i <= 49; i++)
    {
        values[i]=(i%2==0)?true : false;
    }

可以看到,使用运算符后代码精炼不少。

对于这类“二选一”的问题,用上三元运算符可以有效减少代码量,同时也让代码更加美观精炼。

在所有运算符中,只有赋值和逗号运算符的优先级比三元运算符低

所以这样的语句,前方的"i>0"条件不用加括号

judge = i>0 ? true : false;
标签: c语言

本文转载自: https://blog.csdn.net/Chen_Xi_Gao_Gao/article/details/121494547
版权归原作者 Chen_Xi_Gao_Gao 所有, 如有侵权,请联系我们删除。

“C语言条件运算符(?:)的使用”的评论:

还没有评论