본문 바로가기

Programming

C언어 - 분기문 (goto, break, continue, return)

C언어 분기문의 종류 4개를 간단한 예제로 알아보겠다.

 

#include <stdio.h>

int main() {
    int num = 0;
    
    retry:
    
    printf("1 : goto \n");
    printf("2 : break \n");
    printf("3 : continue \n");
    printf("4 : return \n");

    while (1) {
        printf("Input : ");
        scanf("%d", &num);
        
        if(num == 2) {
            break;
        }
        
        switch(num) {
            case 1:
                goto retry;
            case 3:
                continue;
            case 4:
                return 0;
            default :
                printf("Input is not in (1,2,3,4)\n");
        }
        
        printf("End of while\n");   
    }

    printf("End of source\n");

    return 0;
}

goto 문의 경우에는, 앞에 지정한 분기로 실행 명령줄을 이동한다.

위 예제처럼 1을 입력하면 retry: 라인으로 코드 라인을 이동하는 것을 알 수 있다.

 

break 문의 경우에는 loop 혹은 switch에서 탈출하는 분기문이다.

위 예제에서는 while loop를 탈출하기 위해, 2번을 입력하면 break; 하는 if 조건문을 넣어놓았다.

따라서, while문이 끝나게 되면서 "End of source" 텍스트가 화면에 출력되는 것을 알 수 있다.

 

countine 문의 경우에는, 아래 소스를 진행하기 않고 해당 루프를 넘긴다.

위 예제에서, continue; 문의 실행으로 while문의 끝인 "End of while" 텍스트가 화면에 출력되지 않게 된다.

 

return 문의 경우에는 알겠지만 해당 함수의 종료와 값의 반환이다.

위 예제에서 return문을 사용함으로 main 함수가 끝나게 되고, 프로그램이 종료된다.

'Programming' 카테고리의 다른 글

JDK Vender 확인 명령어  (0) 2021.03.17
Json 타입별 간편 Convert(ObjectMapper)  (0) 2021.03.15
JAVA - Classpatch 지정 시 오류 발생 해결법  (0) 2020.08.18
C언어 - 비트연산자 / 연산자  (0) 2020.06.22
C언어 - switch문  (0) 2020.06.22