0
를 호출 한 후 나는 작은 배치 테스트 스크립트를 작성했습니다 :잘못된 순서로 기능
echo start
call:errorcheck "test"
echo main
goto exit
:errorcheck
echo errorcheck: %1
goto exit
:exit
echo end
출력 :
start
errorcheck: "test"
end
main
end
내가 입력하지 않고 기능 errorcheck 다음 고토 종료를 호출 할 " 주요 부분. 그러나 스크립트는 "main"섹션으로 돌아갑니다. 뭐가 문제 야?
왜 당신이 다음'call'를 사용하고 있습니까? 'call'의 목적은 호출자에게 돌아 오는 것입니다. 돌아 가지 않고 어딘가로 점프하려면'goto '를 사용하십시오; 'goto'는'call'과 같은 매개 변수를 받아들이지 않습니다; 그래서'call : errorcheck "test"& got : exit'를 번갈아 가며 ...? 그건 그렇고 : 그 이름을 가진 내부 명령이 있기 때문에 레이블 이름으로'exit'을 사용하지 마십시오; 예를 들어'end' 또는'quit'과 같이 다른 것을 사용하십시오 ... – aschipfl