Board logo

标题: 求问下在SET /A中的两个%号的意思 [打印本页]

作者: fbwolf     时间: 2006-12-14 02:17    标题: 求问下在SET /A中的两个%号的意思

请问下在批处理中
SETLOCAL ENABLEDELAYEDEXPANSION后
出现
SET /A PP=%RANDOM%%%85
请问下%RANDOM%后面两个百分号代表什么意思!

[ Last edited by namejm on 2006-12-13 at 10:01 PM ]
作者: zh159     时间: 2006-12-14 02:21
%RANDOM%除85后的余数
命令行使用“%”,批处理里面使用“%%”
作者: fbwolf     时间: 2006-12-14 02:44
谢谢!但完全可以使用/号来表示除啊,为什么还要用两个百分号呢??不解?

[ Last edited by fbwolf on 2006-12-14 at 02:45 AM ]
作者: namejm     时间: 2006-12-14 02:54
  SET /A PP=%RANDOM%%%85 表示取余操作,也就是数学上所说的模运算,虽然和除法有关系,但是和除法不是一回事。
作者: zh159     时间: 2006-12-14 02:56
%:余
/:除

在批处理内使用要用两个%%,这是批处理决定的,正如“for /f %%n in (*) do echo %%n”里的%%n一样
作者: fbwolf     时间: 2006-12-14 03:05
呵呵,明白了,谢谢,

[ Last edited by fbwolf on 2006-12-14 at 03:14 AM ]