bat批处理脚本 函数使用说明 函数调用结果如何返回

BAT批处理脚本也可以使用函数,函数可以带参数,并且返回结果。但是批处理脚本的函数调用返回结果处理却不是很友好,处理起来相对麻烦。本文详细讲解函数定义、函数调用及调用结果如何返回。

1、代码案例

vfunc.bat

@echo off
echo sum1 a b, return with global variable.
set a=10
set b=20
call :sum1 %a% %b%
echo sum1(%a%,%b%)=%result1%
echo=

echo sum2 a b, return with argument.
set a=10
set b=20
call :sum2 %a% %b% result2
echo sum2(%a%,%b%)=%result2%
echo=

goto :eof

:sum1
set /a result1=%~1 + %~2
goto :eof

:sum2
set /a r3=%~1 + %~2
set "%~3=%r3%"
goto :eof

cmd命令框运行结果

D:\cmdtest\lianxi>vfunc.bat
sum1 a b, return with global variable.
sum1(10,20)=30

sum2 a b, return with argument.
sum2(10,20)=30

代码说明:
1)函数定义

:sum1
set /a result=%~1 + %~2
goto :eof

注意:函数体执行完毕,别忘了goto :eof,结束函数执行

2)函数调用

call :sum1 %a% %b%
call :sum2 %a% %b% result2
rem 函数调用结果处理
2、两种返回结果方式说明

1)全局变量
代码中函数sum1,以全局变量实现返回结果

  • sum1函数体内,给变量result1赋值
  • 调用sum1函数后,获取变量result1值

2)参数形式返回结果
函数sum2,以参数形式返回结果,类似高级语言的参数引用传递,实现格式如下:

  • sum2 arg1 arg2 引用参数result2
  • sum2 函数体内修改result2值,如:set “%~3=%r3%”
  • sum2 函数调用结束后,取参数result2值,%result2%
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值