可以有这行代码吗?

loops_per_msec = (1000000 * loops_per_msec / run_time ? :
        loops_per_msec);

尽管这行代码是从其他可用的源文件中精确复制并粘贴的,但我的编译器给我错误。

最佳答案

三元conditional operator ?: 接受三个操作数。

但是GCC接受omit the middle operand作为扩展。

就您而言,编码

loops_per_msec = (1000000 * loops_per_msec / run_time ? run_time :
    loops_per_msec);

会让任何编译器高兴。

关于c - C编程语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27119686/

10-12 20:29