中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 17:53
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 请问 call set var=%%...%% 中 call的使用方法
可打印版本  974 / 2
第1楼 spiegboy 发表于 2007-02-17 03:12
初级用户 发帖 9 积分 24
请问 call set var=%%...%% 中 call的使用方法
为什么一定要用call,call 后的set 语句为什么一定要用两个%%
@echo off
setlocal enabledelayedexpansion

for /f %%n in (test.txt) do (
set /a i+=1
set gn!i!=%%n
)
set gn
pause

for /l %%j in (1,1,%i%) do call :rec %%j
pause
goto :eof

:rec
setlocal

call set tmp=%%gn%1%%
set /a sum+=tmp
set /a lvl+=1
if %lvl% gtr 1 (
set exp=%exp%+%tmp%
set /a idx+=1
echo !idx!:!exp!=%sum%
) else (set exp=%tmp%)

set /a nxt=%1+1
for /l %%j in (%nxt%,1,%i%) do call :rec %%j
endlocal & set idx=%idx%



goto :eof
第2楼 huahua0919 发表于 2007-12-03 16:15
银牌会员 发帖 780 积分 1,608
%%I
是参数,传给调用的程序!
第3楼 airufo 发表于 2007-12-03 16:33
新手上路 发帖 5 积分 9
!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023