【发布时间】:2018-10-04 06:30:42
【问题描述】:
逻辑运算符在 C 中是否具有优先级(例如 && 在 || 之后执行,反之亦然)还是从左到右执行?我通常使用括号来确保它们正确执行,但是有人问我这个问题,我不确定。
例如a || b && c == 2被解释为(((a || b) && c) == 2)或(a ||( b && (c == 2)))
【问题讨论】:
-
你还问什么?
&&是逻辑 AND,||是逻辑 OR,==是相等运算符,?:是条件运算符,除了标签之外,您的问题中明显不存在。您是在询问条件运算符,还是一般的随机不相关运算符?此外,“...... C 中的优先级还是从左到右执行”没有任何意义。运算符优先级和求值顺序是两个不同的东西。 -
认真的吗?这个问题在 K&R 前 10 页的某处得到了解答。
标签: c logical-operators operator-precedence