lucete171   3년 전

맞은 정답 훑어 보다가 궁금한 게 생겼는데요

처음에 x y에다가 0값을 할당했을 때 원하는 결과가 나오는 거는 알겠는데 아래처럼 아무 값도 할당하지 않고 돌려도 원하는 결과가 나오는 이유를 잘 모르겠네요ㅜㅜ

i=0일때 x^=a,y^=b결과가 어떻게 나오는 지 잘 모르겠네요 도움 부탁드립니다

39dll   3년 전

초기화되지 않은 변수는 Undefined Behavior를 일으키기 때문에, 어떤 값이 되어도 이상하지 않습니다. 정답이 나오도록 0이 될 수도, 엉뚱한 값이 될 수도 있습니다.

lucete171   3년 전

그런데 x,y가 어떤 정해진 값이기만 하면 원하는 결과값을 도출할 수 있는 거 까지는 이해가 되는데 그래도 문제가 있는건지 아니면 말씀대로 undefined behavior 때문에 그런건지 잘 모르겠네요

godowe   3년 전

scanf("%d %d",a,b); ->scanf("%d %d",&a,&b);

댓글을 작성하려면 로그인해야 합니다.