Closed. This question needs details or clarity. It is not currently accepting answers. Learn more
想改进这个问题吗?添加细节并通过editing this post澄清问题。
三年前关闭。
我读到这段代码:
static bool time_expired(uint16_t time, uint16_t start_time, uint16_t tmo)  {
    if (time >= start_time) {
        return (time - start_time) >= tmo;
    } else {
        return time + (0xFFFF - start_time) >= tmo;
    }
}

现在,我不明白它是怎么工作的。我不明白
return (time - start_time) >= tmo;
因为运算符>=表示“大于或等于”。

最佳答案

表达式

(time - start_time) >= tmo


time + (0xFFFF - start_time) >= tmo

属于bool类型;在这两种情况下,都会返回一个布尔值,该值与函数的返回类型匹配。
然而,据我所知,C不提供单独的布尔类型;也许语言是C++。

关于c - 示例函数和运算符> = ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33667534/

10-09 13:12