Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Постфиксные и префиксные арифметич. операции в С++. Программисты, объясните, пожалуйста, этот вопрос кратко и понятно)

Ира Ари Профи (655), на голосовании 8 лет назад
В интернете написано слишком кратко и неинформативно.
Спасибо, кто ответит или даст дельный источник для ответа)
Голосование за лучший ответ
Jurijus Zaksas Искусственный Интеллект (475731) 8 лет назад
Префиксные выполняются до остальных.
Суффиксные - после.
Если в одном выражении присутствуют и те, и другие (над тем же операндом), результат выполнения будет зависеть от компилятора.

a = 1
b = a++ +1 //b=2

a = 1
b = ++a + 1 //b=3

a = 1
b = a++ +++a //b=?
Mahivi Priva Ученик (97) 8 лет назад
При постфиксном операторе (например х++):
- производится вычисление оператора, и запись результата в данную переменную (в примере Х).
- но возвращается не новое значение, а предыдущее
- например Р = Х++ (если Х = 5, то, в Х запишется 6, но в Р запишется 5 - предыдущее значение, т. е. значение до выполнения постфиксной операции)

При префиксном операторе (например ++х):
- производится вычисление оператора и запись в данну переменную
- возвращется новое значение
- например Р = ++Х (если Х = 5, то в Х запишется 6, и также в Р запишется 6)
Похожие вопросы