将三元操作更改为if-else语句

时间:2014-05-01 16:11:04

标签: c

我刚刚开始学习C,我在使用? :运算符时遇到了一些问题。

如何更改

x = c ? a : b;

进入if else语句?

if() { x=a; }  else { x=b;}
这是正确的吗?我不知道病情应该是什么。

4 个答案:

答案 0 :(得分:1)

这将是

if(c)
   x=a;
else
   x=b;

答案 1 :(得分:1)

一个转折声明的形式如下:

result = (booleanValue ? valueA : valueB);

转换为:

if (booleanValue) {
    result = valueA;
} else {
    result = valueB;
}

在你的情况下" booleanValue" " c"," valueA" " a"," valueB"是" b"。希望有所帮助!

答案 2 :(得分:1)

希望这会有所帮助......

        int x = 0;
        bool a = false; // Just assume this can switch between true & false based on some other code.
        var b =10;
        var c =20;

        if (a == true)
        {
            x = b;
        }
        else
        {
            x = c;
        }

答案 3 :(得分:0)

以下是等效的if声明:

if (c)
{
    x = a;
}
else
{
    x = b;
}

条件运算符?:在您的C书“C编程语言”第2.11章中描述,第2版,Kernighan和Ritchie。