中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-02 16:42
48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 求问下在SET /A中的两个%号的意思
可打印版本  936 / 5
第1楼 fbwolf 发表于 2006-12-14 02:17
初级用户 发帖 22 积分 56
求问下在SET /A中的两个%号的意思
请问下在批处理中
SETLOCAL ENABLEDELAYEDEXPANSION后
出现
SET /A PP=%RANDOM%%%85
请问下%RANDOM%后面两个百分号代表什么意思!

[ Last edited by namejm on 2006-12-13 at 10:01 PM ]
第2楼 zh159 发表于 2006-12-14 02:21
金牌会员 发帖 1,467 积分 3,687
%RANDOM%除85后的余数
命令行使用“%”,批处理里面使用“%%”
第3楼 fbwolf 发表于 2006-12-14 02:44
初级用户 发帖 22 积分 56
谢谢!但完全可以使用/号来表示除啊,为什么还要用两个百分号呢??不解?

[ Last edited by fbwolf on 2006-12-14 at 02:45 AM ]
第4楼 namejm 发表于 2006-12-14 02:54
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  SET /A PP=%RANDOM%%%85 表示取余操作,也就是数学上所说的模运算,虽然和除法有关系,但是和除法不是一回事。
第5楼 zh159 发表于 2006-12-14 02:56
金牌会员 发帖 1,467 积分 3,687
%:余
/:除

在批处理内使用要用两个%%,这是批处理决定的,正如“for /f %%n in (*) do echo %%n”里的%%n一样
第6楼 fbwolf 发表于 2006-12-14 03:05
初级用户 发帖 22 积分 56
呵呵,明白了,谢谢,

[ Last edited by fbwolf on 2006-12-14 at 03:14 AM ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023