比较If和Else上的两个函数

时间:2018-10-04 05:22:25

标签: c

当我尝试将我的程序与我的两个同学(其中两个)进行比较时,遇到了这个问题,结果是结果很早(大约2秒钟)。请注意,我忘记使用clock()函数。

if / else条件下,正在使用三元运算符

(Condition) ? (True) : (False);

比使用它慢吗?

if (condition) {
    (function if True) 
}else { 
    (function if False)
}

1 个答案:

答案 0 :(得分:1)

在速度方面没有差异。仅在要少键入时使用三元条件。
请参见以下示例:

void f1(int i) {
    int val = (i > 10) ? i * 5 : i * 10;
}

void f2(int i) {
    int val;
    if(i > 10){
        val = i * 5;
    }else{
        val = i * 10;
    }
}

请参见编译器为这两个函数here生成的程序集。 没有区别。