점프문

2021. 9. 30. 21:31코딩

이번포스팅에서는 점프문에대해 알아보겠습니다.

 

분기문,반복문과는 다르게 점프문은 말 그대로 원하는 곳으로 프로그램의 실행위치를 점프 할 수 있는 기능을 가지고있습니다. 바로 예문을 들어 설명해보겠습니다.


break

이전 포스팅에서 설명한 switch문에서 사용했던 break입니다.

int a = 1;

while( i>=1 )
{
    if  ( i == 5 ) 
        break;
        
        Console.WriteLine(i++);
  }

i가 1씩증가다하다 5가 되면 while 문에서 탈출하는 형식입니다.

 

 

continue

break 가 반복문을 멈추게한다면 continue는 어떤 역할을 하는지 바로 예를 들어서 알아보겠습니다.

for ( int a =0; i<10 ; i ++)
{
    if (i == 5)    
      continue;    // i가 5인경우 실행중인 반복을 건너 뜁니다.
      
      Console.WriteLine(i);
}

반복문 안에 continue가 들어가게되면 실행중인 반복문을 건너뛰게되는 기능을 합니다.

 

goto

goto는 위에언급했던 break와 continue와는 사용밥법이 약간 다릅니다.

goto 레이블;

레이블:
  코드

레이블은 변수와는 다르게 코드 안위 위치를 읽는 역할을 합니다. 예를 들어 사용해보겠습니다.

{
   Console.WriteLine("Sunday");
   Console.WriteLine("Moday");
   
   goto Jump;
   
   Console.WriteLine("Tuesday");
   Console.WriteLine("Wednsday");
   Console.WriteLine("Thursday");
   Console.WriteLine("Friday");
   
   Jump:
   Console.WriteLine("Saturday");
 }

위 코드에서는 Sunday Monday Saturday만 출력됩니다. goto로 인해 바로 Satruday로 이동했기때문에 Tuesday~Friday까지는 뛰어넘게됩니다.

 

 

이번포스팅에서는 위와같이 점프문 3가지에 대하여 알아보았습니다.

현업에서는 특수한 경우를 제외하고는 goto문을 잘 쓰지 않는다고 합니다.이곳저곳 왔다갔다하면서 흐름을 자주 끊어 코드를 읽기어렵다는게 그 이유입니다.  "goto문의 해악" 이라며 논문이 발표된적도있습니다.

 

다음번에는 goto문이 사용되는 특수한 경우를 알아보도록 하겠습니다.

 

'코딩' 카테고리의 다른 글

C#_좋은질문  (0) 2021.10.02
C# 소수점 자리수 정리  (0) 2021.10.01
C#_분기문  (0) 2021.09.25
C#_중첩반복/무한루프  (0) 2021.09.24
C#에서의 반복문.  (0) 2021.09.23