증감연산자 질문;;
우수리
one=1, two=2
one=++two*3
이면 one은 9, two는 3 ..
one=two++*3
이면 one는 6, two는 3 ..
이라고 하던데요.
이해가 굉장히 애매합니다. one=++two*3 은 two를 1증가 시킨후에 3을 곱하므로 one=9 인건 알겠는데 two가 3이라는건 무얼 뜻하는지 ,,,
one=two++*3 도 마찬가지로 잘 모르겠습니다.(two++*3 은 다른연산 *3을 한 후에 1증가 맞나요?)
설명 부탁드릴게요..!
-
해늘
one=++two*3
이 한 줄은
++two;
one=two*3;
이 두 줄과 같습니다.
그래서 먼저 two가 3이 되고, 여기에 3을 곱한 값을 one에 넣으니까 one은 9가 됩니다.
one=two++*3
이 한 줄은
one=two*3;
two++;
과 같게 됩니다.
먼저 one이 6이 되고 그 다음에 two가 3이 됩니다. -
SweetChoco
아... 저도 지적 당했던건데; 질문은 기본폰트로 하셔야해요
*공지참조* -
연연두
one = ++ two * 3 선증가 후연산 인 겁니다.. 그러니까 two를 먼저 증가시킨 후에..
3과 곱한 뒤, one에 대입을 하는 겁니다.. ++ 연산은 변수 자체적으로 값이 증가하기 때문에..
첫 번째 연산에서 two는 3이 되고, one은 9가 되지요..
두 번째 연산은.. 선연산 후증가 인데요..
one=two++*3; 일 단.. two=2 라는 값과 3이라는 값을 먼저 곱하고 one에게 대입한 뒤..
two의 값을 자체적으로 올립 -
후력
++a --- 선 증가 후 연산, 후 증가 선 연산---a++
one=1, two=2
one=++two*3 --- ++two 선 증가이기 때문에 two의 값은 2에서 +1된값 그래서 two의 값은 3
이면 one은 9, two는 3 ..
one=two++*3 ------ two++ 후 증가 two*3을하고 난 후 two값을 1증가 그래서 two값은 3
이면 one는 6, two는 3 ..