Почему операторы битов имеют такой низкий приоритет в C и C ++?C++

Программы на C++. Форум разработчиков
Anonymous
Почему операторы битов имеют такой низкий приоритет в C и C ++?

Сообщение Anonymous »

В C и C ++ выражение some_num & 0xabcd == 5 будет эффективно оцениваться как some_num & (0xabcd == 5) . Это отличается от всех стандартных арифметических операторов, так как они имеют более высокий приоритет, чем операторы сравнения, поэтому некоторые_NUM + 5 == 5 будут оцениваться, как мы ожидаем.
Почему это? Кажется очень нелогичным, что стандартные арифметические операторы имеют гораздо более высокий приоритет, чем битовые арифметические операторы.

Подробнее здесь: https://stackoverflow.com/questions/796 ... in-c-and-c

Вернуться в «C++»