1110번 - 더하기 사이클
제가 직접 예시도 출력해보고 맞는 걸 확인하고 제출했는데 밑에 나온 에러가 뜹니다.
인터넷에도 검색해보고 했는데 잘 모르겠어서 질문 남깁니다.
제 생각에는 while문 안에서 result값이 계속 변화하는데 while문을 반복할 때마다 result값이 초기화되지 않았다고 하는 건가요?
그것 때문에 int result;를 while문 안에도 넣어봤는데 그러면 조건문에 나온 result가 선언되지 않아서 실행이 안 됩니다.
대체 무슨 문제일까요?
Main.cc: In function ‘int main()’: Main.cc:15:11: warning: ‘result’ is used uninitialized [-Wuninitialized] 15 | while(n != result){ | ~~^~~~~~~~~
12줄에서 result가 선언하고 아무런 값도 대입하지 않은 채로 15줄에서 result를 사용했기 때문에 오류가 발생합니다.
해결하려면 while문을 do while문으로 바꾸거나, 처음에 while문을 실행하기 전에 result문을 초기화하면 됩니다.
감사합니다!
댓글을 작성하려면 로그인해야 합니다.
changwonchun 2년 전
제가 직접 예시도 출력해보고 맞는 걸 확인하고 제출했는데 밑에 나온 에러가 뜹니다.
인터넷에도 검색해보고 했는데 잘 모르겠어서 질문 남깁니다.
제 생각에는 while문 안에서 result값이 계속 변화하는데 while문을 반복할 때마다 result값이 초기화되지 않았다고 하는 건가요?
그것 때문에 int result;를 while문 안에도 넣어봤는데 그러면 조건문에 나온 result가 선언되지 않아서 실행이 안 됩니다.
대체 무슨 문제일까요?