C中的逻辑运算符优先级

时间:2018-10-04 06:30:42

标签: c logical-operators operator-precedence

逻辑运算符在C中是否具有优先级(例如&&||之后执行,反之亦然)还是从左到右执行?我通常使用括号来确保它们正确执行,但是有人问我这个问题,我不确定。

例如,a || b && c == 2被解释为(((a || b) && c) == 2)(a ||( b && (c == 2)))

2 个答案:

答案 0 :(得分:1)

条件被解释为(a ||( b && (c == 2)))

&&的优先级高于||,如此处所示:https://en.cppreference.com/w/c/language/operator_precedence

答案 1 :(得分:0)

逻辑与优先于逻辑或。

'=='的优先级高于逻辑OR和AND。

请查看:https://en.cppreference.com/w/c/language/operator_precedence