Говоря об ассоциативности операторов в C, я задавался вопросом, почему существуют различия между ассоциациями между операторами, которые имеют одинаковый приоритет. например, приращение постфикса и постфиксное декремент оставят ассоциативность; в то время как префикс приращения и префикс декремент имеют правую ассоциативность. Разве не просто иметь только левую или правую ассоциативность для всех одинаковых операторов приоритета?Почему существуют разные ассоциации между операторами в C?
Есть ли причины этого?
Стол в K & R (2-е изд., Стр. 48) виноват во всей путанице в отношении приоритета оператора в C. Там они неправильно помещают постфикс и префикс в ту же группу приоритетов, что просто неправильно. Это одна из многих причин, по которым K & R не следует использовать для обучения/обучения C, книга заполнена ошибками и плохой практикой. – Lundin
@lundin, смешно, как книга создателей C должна быть полна ошибок! – Shahbaz
@Shahbaz Это не странно, правда. Оригинальная книга была написана в темные века, до того, как C был даже стандартизирован, и до того, как хорошая практика программирования была даже изобретена. Книга была обновлена до 2-го издания по стандартизации ANSI/ISO, но все еще унаследовала множество ошибок и странностей из прошлого. И книга не обновлена до последних стандартов. И любая книжка по информатике старше 20 лет, вероятно, в любом случае должна считаться устаревшей. – Lundin