Goto 문

Goto 문

Free Pascal은 goto 점프 문을 지원해요.

출처: 문서

본문

goto 문을 사용할 때는 다음 사항을 꼭 기억해야 해요.

  • 점프 레이블은 goto 문과 같은 블록 안에 정의돼 있어야 해요.
  • 루프 바깥에서 루프 안으로, 혹은 그 반대로 점프하면 이상한 효과가 생길 수 있어요.
  • goto 문을 사용하려면 -Sg 컴파일러 스위치를 쓰거나 {$GOTO ON}을 사용해야 해요.

iso나 macpas 모드에서, 또는 nonlocalgoto 모드 스위치를 켜면 컴파일러가 비지역(non-local) goto도 허용해요.

goto 문은 좋지 않은 관행으로 여겨지기 때문에 가능한 한 피해야 해요. goto 없이도 만들 수 있는 구성으로 항상 대체할 수 있는데, 그 구성이 goto 문만큼 명확하지 않을 수도 있어요. 예를 들어 다음은 허용되는 goto 문이에요.

label
   jumpto;
 ...
 Jumpto :
   Statement;
 ...
 Goto jumpto;
 ...

더 알아보기