x=10 y=20
x = x^y;
y = x^y;
이렇게 하면 x=20 y=10 이 된다는대 왜 그렇게 되는지 이해가안가요..
님이 2진수로 표현한다음 손으로 비트연산해보셈
두번째줄 y <- x ^ y = x ^ (y ^ y) = x, y에 원래의 x값 대입
세번째줄 x <- (x ^ y) ^ x = (x ^ x) ^ y = y
대입이 일어나기때문에(시간별로 값이 바뀜) 헷갈리는거지 원래의 값이랑 지금 변수에 들어있는게 무엇인지만 생각하면 헷갈릴게 없소
1010 10100 11110 01010 10100
x y x y x
님이 2진수로 표현한다음 손으로 비트연산해보셈
두번째줄 y <- x ^ y = x ^ (y ^ y) = x, y에 원래의 x값 대입
세번째줄 x <- (x ^ y) ^ x = (x ^ x) ^ y = y
대입이 일어나기때문에(시간별로 값이 바뀜) 헷갈리는거지 원래의 값이랑 지금 변수에 들어있는게 무엇인지만 생각하면 헷갈릴게 없소
1010 10100 11110 01010 10100
x y x y x