[C/C++] 12. 함수(1) / 반복문

찰규

·

2026년 8월 2일 (29일 전)

C/C++ 실행 구조의 핵심인 메인 함수의 역할과, 프로그램이 지속해서 동작할 수 있도록 만들어주는 반복문(Loop)의 개념 및 사용법에 대해 알아본다.

1. 메인 함수(Main Function)와 프로그램 생명주기

C/C++에서 main() 함수는 프로그램의 진입점(Entry Point)이자 시작점이다.

  • 프로그램 실행 흐름

    1. 프로그램이 시작되면 가장 먼저 main() 함수가 호출된다.

    2. main() 함수 내부에서 필요에 따라 다른 사용자 정의 함수(예: Add() 등)를 호출하여 처리 결과를 받아온다.

    3. main() 함수의 모든 코드가 실행을 마치고 반환(return)되면 프로그램 전체가 함께 종료된다.

일반 프로그램은 왜 바로 종료되지 않고 계속 실행될까?

게임이나 일반 응용 프로그램은 사용자가 직접 끄기 전까지 계속 실행된다. 이는 main() 함수 내부 전체를 감싸고 있는 **거대한 반복문(메인 루프)**이 존재하여 지속적으로 코드를 유지하기 때문이다.

2. 반복문: for문과 while

특정 조건이 참(true)인 동안 코드 블록을 반복적으로 수행할 때 사용하며, 대표적으로 for문과 while문이 있다.

for

반복 횟수가 비교적 명확할 때 자주 사용하며, 초기화식, 조건식, 증감식이 한 줄에 작성되어 구조가 깔끔하다.

#include <stdio.h>

for (int i = 0; i < 10; i++) {
    // i가 0부터 9까지 1씩 증가하며 총 10회 반복 실행
    printf("out test %d\n", i);
}
  • 동작 순서: 초기화 (최초 1회) \rightarrow 조건 체크 \rightarrow 코드 수행 \rightarrow 증감식 수행 \rightarrow 조건 체크 반복

  • for문 내부에서 선언된 변수 i는 해당 for문 안에서만 유효한 지역 변수다.

while

조건식 중심의 반복문으로, 반복자 관리(초기화 및 증감)는 프로그래머가 코드 내부에서 직접 처리해 주어야 한다.

int i = 0; // 초기화
while (i < 10) { // 조건 체크
    printf("out test %d\n", i);
    i++; // 증감식
}

3. 반복문 제어 키워드: continuebreak

반복문 수행 도중 흐름을 변경해야 할 때 사용하는 특수 키워드다.

  • continue

    • 현재 회차의 남은 아래 코드를 실행하지 않고 건너뛰어 다음 반복 회차(증감식 단계)로 넘어간다.

    • 예: 특정 홀수/짝수 회차만 건너뛰고 출력을 계속하고 싶을 때 사용

  • break

    • 조건 성립 여부와 상관없이 반복문을 즉시 탈출(강제 종료)한다.

    • 예: 사용자의 특정 입력이나 종료 명령어(Alt+F4 등)를 감지하여 프로그램 메인 루프를 끝낼 때 사용

마무리하며

  • 메인 함수는 프로그램의 진입점이자 시작점으로 이 함수가 종료되면 프로그램도 함께 종료된다.
  • 반복문인 for문과 while문을 활용하면 조건이 완료될 때까지 특정 코드 블록을 반복적으로 실행할 수 있다.
  • 반복문 내부에서 continue를 사용하면 현재 회차를 건너뛰고, break를 사용하면 반복문 자체를 즉시 강제 종료할 수 있다.