본문 바로가기
Study/C++

전위증가 연산자 후위증가 연산자 ++i, i++

by 뿡뿡대마왕 2014. 7. 7.
반응형


i++, ++i  ??

++이 앞에 있으면 전위증가, ++이 뒤에 있으면 후위증가..


차이는 무엇이냐???

별 생각없이 사용할 수 도 있지만 그 차이는 확실 하므로 잘 정리해서 기억하고 있어야 한다.

* 전위 증감 연산자는 실행문에서 값이 먼저 증가/감소 해서 적용된다.

* 후위 증감 연산자는 실행문에 값이 후에 증가/감소해서 적용된다.

즉 위 말이 무엇이냐???

말로해서는 이해가 안될수 있으므로 개발자 답게 코드로 풀어서 보면 다음과 같다.


* 후위 증감 연산자 : i++

int i =0;

int a =  i++;

-> a= 0, i =1;

즉 위에  int a = i++;을 플아 코드로 보자면

 const int temp_val = i;

  i = i +1;

  return temp_val;

a값에는 temp_val이 들어가고 i값은 i+1이 된다.

즉 후위 증감 연산자는 증가되기전의 값을 넘겨준후 자기 자신을 증가시킨다고 보면 되겠다.


* 전위 증감 연산자: ++i

이것은 바로 증가~~

i = i +1;

return i;

요렇게 자기 자신을 증가후 넘겨준다.


간단한 예를 보자면

int a = 10, b =10, c= 0;

c  = (a++) + (b++);

a=  11, b= 11, c = 20;   

(a값은 증가해야 하고, b값도 증가해야 하고 c는 증가된 값을 계산하는게 아니기 때문에 10 + 10 이 된다.)


int a = 10, b =10, c= 0;

c  = (++a) + (++b);

a = 11, b = 11, c = 22

a와 b의 값이 증가된후 연산되는것이므로 11 + 11 이 된당


자 이해가 되는감??

정보는 공유되어야 한다 쭈욱~~


반응형

댓글