Приоритет логических операторов в Си - PullRequest
0 голосов
/ 04 октября 2018

Имеют ли логические операторы приоритет в C (например, && выполняется после || или наоборот) или они выполняются слева направо?Я обычно использую скобки, чтобы убедиться, что они выполняются правильно, но кто-то спросил меня об этом, и я не был уверен.

Например, a || b && c == 2 интерпретируется как (((a || b) && c) == 2) или (a ||( b && (c == 2)))

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Логическое И имеет приоритет перед Логическим ИЛИ.

Символ '==' имеет приоритет перед логическим ИЛИ и И.

Пожалуйста, посмотрите: https://en.cppreference.com/w/c/language/operator_precedence

0 голосов
/ 04 октября 2018

Условие интерпретируется как (a ||( b && (c == 2)))

. && имеет более высокий приоритет над ||, как вы можете видеть здесь: https://en.cppreference.com/w/c/language/operator_precedence

...