Programming/C | C++

[C++] goto 문

꾸준희 2018. 9. 7. 11:00
728x90
반응형







C++ goto 문 사용법


goto identifier;





identifier에 의해 지정된 레이블 문은 현재 함수에 존재해야 하며,


가급적 goto 문 보다는 break, continue 및 return 문을 사용하는 것이 좋은 프로그래밍 스타일이라고 한다. 


그러나 break 문은 한 수준의 루프만 종료하므로, 중첩이 잦은 루프를 종료하고 싶을 때는 goto 문을 사용한다.






goto 문 예제


// goto_statement.cpp  
#include <stdio.h>
int main()  
{  
    int i, j;  
  
    for ( i = 0; i < 10; i++ )  
    {  
        printf_s( "Outer loop executing. i = %d\n", i );  
        for ( j = 0; j < 2; j++ )  
        {  
            printf_s( " Inner loop executing. j = %d\n", j );  
            if ( i == 3 )  
                goto stop;  
        }  
    }  
  
    // This message does not print:   
    printf_s( "Loop exited. i = %d\n", i );  
  
    stop:   
    printf_s( "Jumped to stop. i = %d\n", i );  
}  


실행 결과


외부 루프를 실행합니다. i = 0

내부 루프를 실행합니다. j = 0

내부 루프를 실행합니다. j = 1

외부 루프를 실행합니다. i = 1

내부 루프를 실행합니다. j = 0

내부 루프를 실행합니다. j = 1

외부 루프를 실행합니다. i = 2

내부 루프를 실행합니다. j = 0

내부 루프를 실행합니다. j = 1

외부 루프를 실행합니다. i = 3

내부 루프를 실행합니다. j = 0

건너뛰어 중지합니다. i = 3



728x90
반응형

'Programming > C | C++' 카테고리의 다른 글

[C++] 파일 분할 작성  (0) 2018.11.26
[C] assert 매크로  (0) 2018.11.26
[C++] goto 문  (0) 2018.09.07
[C++] 조건부 연산자  (0) 2018.09.06
[C, C++] 메모리 함수 memset, memmove, memcpy, memcmp, memchr  (0) 2018.09.05
[C++] 반복자 (Iterator)  (0) 2018.09.04
1 2 3 4 5 6 7 8 ··· 15