이번 튜토리얼에서는 C/C++ 프로그래밍에서 continue 문이 어떻게 동작하는지 예제와 함께 자세히 알아보겠습니다.
continue 문이란?
continue 문은 반복문의 흐름을 제어하는 제어문입니다. break 문처럼 반복문을 완전히 빠져나가는 것이 아니라, 현재 진행 중인 반복(iteration)의 나머지 코드를 건너뛰고 곧바로 다음 반복으로 넘어가도록 강제합니다.
즉, 특정 조건에서만 코드 실행을 생략하고 싶을 때 continue 문을 유용하게 사용할 수 있습니다.
예제 코드
아래 예제는 1부터 10까지 숫자를 출력하되, 값이 6일 경우에만 출력을 건너뛰는 프로그램입니다.
#include <stdio.h>
int main() {
// 1부터 10까지 반복
for (int i = 1; i <= 10; i++) {
// i가 6일 때는 출력하지 않고 건너뜀
if (i == 6)
continue;
else
printf("%d ", i);
}
return 0;
}실행 결과
1 2 3 4 5 7 8 9 10
동작 원리 이해하기
위 코드에서 변수 i가 6이 되면 continue 문이 실행됩니다. 이때 printf() 함수는 호출되지 않고, 곧바로 증감식(i++)으로 이동한 뒤 다음 반복을 시작합니다.
그 결과 출력 화면에는 6만 빠진 1 2 3 4 5 7 8 9 10이 표시됩니다.
while 문에서의 주의점
continue 문은 for, while, do-while 등 모든 반복문에서 사용할 수 있습니다. 다만 while 문에서 사용할 때는 주의가 필요합니다.
for 문은 continue를 만나도 증감식이 실행되지만, while 문에서는 조건 검사로 바로 이동하기 때문에 반복 변수를 갱신하는 코드가 continue 뒤에 있다면 무한 루프에 빠질 수 있습니다. 따라서 while 문에서는 continue 호출 전에 반드시 변수를 갱신해야 합니다.
break 문과의 차이점
- break: 반복문 전체를 종료하고 반복문 밖으로 빠져나갑니다.
- continue: 현재 반복만 건너뛰고 다음 반복을 계속 수행합니다.
두 제어문의 차이를 정확히 이해하면 반복문 로직을 훨씬 유연하고 깔끔하게 작성할 수 있습니다.