AutoLISP言語でループを中断する方法は何ですか?
AutoLISP言語では、exitまたはreturnキーワードを使用してループを中断することができます。
ループ内で exit を使用して、ループを中断してメッセージを表示する方法は次の例です。
(defun test-loop ()
(setq i 0)
(repeat 10
(setq i (1+ i))
(if (= i 5)
(progn
(exit)
(princ "\nLoop interrupted at i = 5"))
(princ (strcat "\ni = " (itoa i))))))
この例では、1から10までのリピートループがあり、iの値が5になると、exit関数が呼び出されてループが中断され、「i=5でループが中断されました」というメッセージが表示されます。ループは即座に中断され、以降の反復は実行されません。
exit関数は、ループだけでなく、他の種類のコードブロック(例えばwhileループやforeachループなど)も中断するために使用できることに注意してください。
それに加えて、ループを中断するために return キーワードを使用することもできます。これは exit と同じ効果があります。