Отличие префиксной и постфиксной формы в C++

В C++ префиксная и постфиксная формы инкремента (++) и декремента (—) представляют собой два разных способа изменения значения переменной. Разница между ними заключается в порядке выполнения операции и возвращаемом значении.

В префиксной форме оператор инкремента или декремента применяется к переменной перед ее использованием в выражении. Это означает, что значение переменной увеличивается или уменьшается, а затем возвращается новое значение.

В постфиксной форме оператор инкремента или декремента применяется к переменной после ее использования в выражении. Это означает, что значение переменной сначала возвращается, а затем изменяется.
Пример 1

 
int i=1, value;
value = i++;
cout << value << "  " << i << endl;  // 1 2
value = ++i;
cout << value << "  " << i << endl; // 3 3

Пример 2

 
int i=1, j=1;
cout << i++ << ", " << ++j << endl; // 1 2
cout << i << ", " << j << endl; // 2 2

Замечание
В циклах рекомендуется использовать префиксную форму инкремента ++i, а не постфиксную i++, так как префиксная форма инкремента реализуется легче.

Заключение.

Префиксы (++a, —a) — сначала изменяет значение переменной, затем возвращает измененное значение.

Постфиксы (a++, a—) — сначала возвращает текущее значение переменной, затем изменяет значение переменной.

222

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *