를 종료 없지만 나는이 작동하지 않습니다 다음Bash 스크립트. 정수 비교와 루프가 결코
을 입증하기 위해 다음과 같은 최소한의 예를 작성했습니다 :
#! /bin/bash
n=1 m=2
while ((n < m))
echo "$n $m"
((n=n+1))
do
continue
done
않습니다 다음 작업 : 이해
#! /bin/bash
n=1 m=2
while true
echo "$n $m"
((n=n+1))
do
if ((n < m))
then
continue
else
break
fi
done
왜 두 번째 형식이 작동하는지. 왜 첫 번째 양식이 작동하지 않는지 나는 이해할 수 없다.
나는이 스크립트들이 동등하다고 생각한다고 썼다. (동일한 출력을 생성합니다.) 그러나 첫 번째 무한 루프! 왜 이런 일이 생길까요?
배쉬의 광기 - 덕분에이 멋지게 일을 정리! – user3728501
@ user3728501,'while (n
반드시 좋거나 나쁜 언어 디자인이 아닙니다. 방금 구문을 이해하지 못했습니다. 구문 오해! = 엉뚱한 코딩. – user3728501