Операции ++ и -- в С++
Названия: ++ - инкремент; -- декремент
Особенность этих операций в том, что они имеют две формы записи — префиксную и постфиксную. В префиксной форме изменяется операнд, а потом его значение становится результирующим значением выражения. В постфиксной форме значением выражения является исходное значение операнда, после чего он изменяется.
Пусть дана переменная х. Можно написать так для увеличения значения этой переменной на единицу:
х=х+1 или х+=1.Но лучше использовать инкремент. И тогда запись будет такой:
х++Операнд может быть целого или плавающего типа. В любом случае он будет увеличиваться (уменьшаться) на единицу. Тип результата соответствует типу операнда.
Пример:
#includeРезультат выполнения:int main(){ int X = 3. у = 3: printf("Значение префиксного выражения: %d\n",++х): printf("Значение постфиксного выражения: %d\n",у++); pr1ntf("Значение х после приращения: %d\n",х); printfC"Значение у после приращения: %d\n",у); return 0; }
Значение префиксного выражения: 4 Значение постфиксного выражения: 3 Значение х после приращения: 4 Значение у после приращения: 4Замечания
• Когда инкремент или декремент выполняются как совершенно отдельный от других выражений оператор, то префиксная и постфиксная форма приводят к одинаковому результату, то есть, при таком использовании нет никакой разницы где мы пишем оператор.
• Нельзя использовать в операции инкремента или декремента сложный операнд, представляющий собой выражение. Можно только простую переменную. Написать ++(у-1) будет ошибкой.