Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

증가 ++ 및 감소 -- C++의 연산자


증가 연산자 ++는 피연산자에 1을 더하고 감소 연산자 --는 피연산자에서 1을 뺍니다. 그래서

x = x+1; is the same as x++;

마찬가지로

x = x-1; is the same as x--;

증가 및 감소 연산자는 모두 피연산자 앞(접두사) 또는 뒤(후위)일 수 있습니다.

x = x+1; can be written as ++x;
로 작성할 수 있습니다.

증가 또는 감소가 표현식의 일부로 사용되는 경우 접두사와 후위 형식에 중요한 차이가 있습니다. 접두사 형식을 사용하는 경우 표현식이 끝나기 전에 증가 또는 감소가 수행되고, 후위 형식을 사용하는 경우 전체 표현식이 평가된 후에 증가 또는 감소가 수행됩니다.

  • 접두어 버전(즉, ++i)에서 i의 값은 증가하고 표현식의 값은 i의 새 값입니다. 따라서 기본적으로 먼저 증분한 다음 표현식에 값을 할당합니다.
  • 후위 버전(i.e., i++)에서는 i의 값이 증가하지만 표현식의 값은 i의 원래 값입니다. 따라서 기본적으로 먼저 표현식에 값을 할당한 다음 변수를 증가시킵니다.

예시

더 나은 이해를 위해 몇 가지 코드를 살펴보겠습니다. −

#include<iostream>
using namespace std;

int main() {
   int x = 3, y, z;
   y = x++;
   z = ++x;
   cout << x << ", " << y << ", " << z;
   return 0;
}

출력

이것은 우리에게 다음과 같은 결과를 줄 것입니다 -

5, 3, 5

왜 이런거야? 자세히 살펴보겠습니다 -

  • x를 3으로 초기화
  • x++ 표현식을 평가하여 얻은 값을 y에 할당합니다. 즉, x가 증가하기 전에 x가 증가하고 x가 증가합니다.
  • x를 증가시킨 다음 ++x 표현식을 평가하여 얻은 값을 z에 할당합니다. 즉, 증가 후 x의 값입니다.
  • 이 값 인쇄