Гарантируется ли ассоциативность слева направо для сочетания операций умножения и деления? ⇐ C++
-
Гость
Гарантируется ли ассоциативность слева направо для сочетания операций умножения и деления?
Обратите внимание, что это не имеет ничего общего с приоритетом операторов.. () и ++, Неопределенное поведение и точки последовательности. Почему эти конструкции используют неопределенное поведение до и после приращения? и сотни подобных вопросов по этому поводу здесь
Вкратце: гарантируется ли стандартом Ассоциативность?
Подробный пример: из статьи в Википедии о приоритете операторов operator* и operator/ имеют одинаковый приоритет и Left. Операторы - направо. Означает ли это, что стандарт гарантирует, что это:
int res = x/y * z/t; будет оценено как
int res = ( ( x / y ) * z ) / t; или это определённая реализация?
Если это гарантировано, не могли бы вы процитировать?
Просто из любопытства, я всегда в таких случаях пишу скобки.
Готов удалить вопрос, если такой есть.
Обратите внимание, что это не имеет ничего общего с приоритетом операторов.. () и ++, Неопределенное поведение и точки последовательности. Почему эти конструкции используют неопределенное поведение до и после приращения? и сотни подобных вопросов по этому поводу здесь
Вкратце: гарантируется ли стандартом Ассоциативность?
Подробный пример: из статьи в Википедии о приоритете операторов operator* и operator/ имеют одинаковый приоритет и Left. Операторы - направо. Означает ли это, что стандарт гарантирует, что это:
int res = x/y * z/t; будет оценено как
int res = ( ( x / y ) * z ) / t; или это определённая реализация?
Если это гарантировано, не могли бы вы процитировать?
Просто из любопытства, я всегда в таких случаях пишу скобки.
Готов удалить вопрос, если такой есть.
Мобильная версия