Goto 문: 두 판 사이의 차이

내용 삭제됨 내용 추가됨
잔글 로봇이 더함: hr:Goto
잔글 →‎변형: switch문 -> Switch 문
11번째 줄:
 
== 변형 ==
''계산된 GOTO문''은 수식의 값에 따라 몇 군데의 레이블로 분기하거나, 변수에 저장되어 있는 레이블로 분기한다. 계산된 GOTO문은 보통 GOTO문보다 문제가 더 심각한데, 프로그래머가 어떤 구문을 본다고 해도 다음에 무엇이 수행될지 알 수 없기 때문이다. [[베이직]]의 ON GOTO문은 전자의 계산된 GOTO문을 지원하며, 각각의 사례별로 분기에 유용하다. [[C (프로그래밍 언어)|C]]에서는 [[switch문Switch 문]]을 지원한다. 어떤 C 컴파일러들은 레이블 변수에 따라 분기하는 GOTO문을 제공하기도 한다.
 
[[이어하기]]({{lang|en|continuation}})는 프로그램의 임의의 위치에서 기억했던 위치로 분기하는 점에서 계산된 GOTO문과 비슷하다. 그러나 이어하기는 현재 함수를 벗어날 수 있지만 GOTO문은 그렇지 않기 때문에 이어하기가 더 유연하다. 이어하기를 실행하면 보통 분기하는 것뿐만 아니라 보통 프로그램의 [[호출 스택]]을 조절하는 것까지 한다.