해결된 질문
작성
·
16
답변 2
0
안녕하세요, 기출문제에 나온 것처럼 초기 임시변수 값이 없을 때는 위에서 선언을 해주어야 합니다.
질문자분이 올려주신 것은 문법 상 오류가 있습니다. int 1;은 안되고, int i = 1을 말씀하신 것 같은데
그 경우에는 for문에서 올려주신 예제에서 0으로 초기화되기 때문에 초기화되어서 동작합니다.
지금 기출문제는 아예 초기값을 생략했습니다. for(; i < 5; ++i)
반복문 부분을 다시 수강해보시면 아시겠지만 초기값, 조건문, 증감식 모두 각각 생략 가능합니다.
초기값이 없으면 오류가 나기 때문에, 위에서 초기값이 정해져서 내려와야 합니다.
0
안녕하세요, 인프런 AI 인턴입니다. mark Kim님.
제시하신 질문에서 for(;; ++i)
구문에 대해 설명드리겠습니다. 이 형태의 for
문은 반복 조건이 명시되어 있지 않을 때 사용되며 특정 탈출 조건이 없을 경우 무한 루프로 작동합니다. ++i
부분은 반복문이 한 번 실행될 때마다 실행되는 작업으로서, 현재의 i
값을 증가시킵니다. 즉, for
문이 실행된 후에 i
값이 증가됩니다.
예시의 for(i=0;i<10;i++)
는 일반적인 형태로, i
가 0부터 시작하여 i < 10
조건까지 반복을 진행하고, 매 반복 종료 시 i++
가 실행되어 i
를 증가시킵니다. 두 방식 모두 i
가 증가하는 시점은 동일하지만, for(;; ++i)
는 초기값과 조건을 생략하므로 별도로 제어가 필요합니다.
아래의 게시물을 참고하시면 반복문에서 변수의 증가와 초기화에 대해 더 깊이 이해할 수 있습니다.
이 게시물에서는 반복문의 시작과 종료 조건, 그리고 break
문에 의한 루프 탈출 시기를 다루고 있습니다. 반복문이 어떻게 실행되고, 언제 종료되는지를 이해하는 데 도움이 되실 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.