Board logo

标题: 【已结】CALL多重调用时,参数如何传递? [打印本页]

作者: blancy     时间: 2009-3-3 08:59    标题: 【已结】CALL多重调用时,参数如何传递?

有一个批处理文件,内容是
CALL :AA 16 26
goto :END

:AA
echo %1 %2
CALL :BB 36 46
goto :END
goto :eof

:BB
...
goto :eof

:END
echo END

我想在BB标签中使用echo显示36 46, 请问这时36 46参数该怎么表示,还是%1和%2吗?多谢

[ Last edited by blancy on 2009-3-3 at 23:52 ]
作者: moniuming     时间: 2009-3-3 09:58
为什么不试试呢?
作者: blancy     时间: 2009-3-3 23:25
在BB标签中使用echo显示36 46 的问题解决了:如我上面所说
现在的问题是:如果想在BB标签处显示AA的参数16 26该怎么表示啊,自己没试出来,请高手帮忙?

已解决:将AA标签的参数作为BB的参数即可,即
CALL :AA 16 26
goto :END

:AA
echo %1 %2
CALL :BB 36 46 %1 %2
goto :END
goto :eof

:BB
echo %3 %4
goto :eof

:END
echo END

输出为
16 26
16 26
END

[ Last edited by blancy on 2009-3-3 at 23:52 ]
作者: moniuming     时间: 2009-3-4 01:40
其实也可以用%1和%2的:
@echo off
CALL :AA 16 26
goto :END

:AA
echo.AA:%1 %2
CALL :BB %1 %2 36 46
goto :eof

:BB
echo.BB:%1 %2 %3 %4
goto :eof

:END
echo.END
pause