"x = x++"하면 x의 값은 뭐가되나요?

조회수 2841회
int x = 7;
x = x++;

이런 코드가 있으면 무슨일이 벌어지나요? 변수가 연산후 증가 되고 자기자신에게 값을 할당하나요? 제가 컴파일 해보니까 x는 여전히 값이 7인데. 제 책에서는 x의 값이 증가된다고 나왔거든요... 뭐죠?

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    x자체는 증가됩니다. 그러나 x는 자기자신에게 이전의 x값을 할당합니다.

    x=x++; 라는 구문에서 x++는 x가 증가하지만 반환은 증가하기 이전의 x값을 반환합니다. 그래서 x=에서 x에 대입되는 값을 증가되기 이전의 x값인 7이 대입됩니다.

    결론적으로 x는 증가되지만 x에 초기 x값을 대입하므로 값이 7이되는것입니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)