나는 두 번째 전에이 질문을 보았고 거기에서 몇 가지 자료를 가져 왔습니다 . 'break n'구문의 이름이 있습니까?
이것은 사람들이 프로그램을 이중 중첩 for 루프에서 벗어나도록 지시 해야하는 복잡한 방법으로 보입니다.
for (i = 0; i < 10; i++) {
bool broken = false;
for (j = 10; j > 0; j--) {
if (j == i) {
broken = true;
break;
}
}
if (broken)
break;
}
나는 goto 선언이 악마라고 말하는 교과서들을 알고 있으며, 나는 그것들을 전혀 좋아하지 않지만 규칙에 대한 예외를 정당화합니까?
n-nested for 루프를 다루는 답변을 찾고 있습니다.
참고 : 예, 아니요 또는 그 사이의 어딘가에 상관없이 완전히 가까운 대답은 환영 하지 않습니다 . 특히 대답이 '아니요'인 경우 왜 합법적 인 이유를 제시해야합니까 (어쨌든 Stack Exchange 규정에서 너무 멀지 않음).
goto
: goto (C # Reference) - "goto 문은 깊이 중첩 된 루프를 벗어나는 데 유용합니다."
goto
는 실제로 C # 스위치에서 첫 번째 사례 내에서 코드를 실행 한 후 다른 사례로 넘어갈 수 있어야합니다. 그래도 내가 사용한 유일한 사례입니다.
for (j = 10; j > 0 && !broken; j--)
필요하지 않습니다break;
.broken
외부 루프가 시작되기 전에 의 선언을 이동하면 s가 필요 하지for (i = 0; i < 10 && !broken; i++)
않다고 생각할 수 있습니다 .break;