中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-06 11:18
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【批处理】这个数字去哪里了? 查看 733 回复 8
楼 主 【批处理】这个数字去哪里了? 发表于 2007-11-08 18:33 ·  中国 江苏 无锡 电信
初级用户
积分 28
发帖 11
注册 2007-11-08 14:33
18年会员
UID 102062
性别 男
状态 离线
@echo off
setlocal enabledelayedexpansion
set numbers= %91% %2% %3% %4% %5% %6% %7% %8%
echo numbers:%numbers%
echo. & pause

=============================
运行一下,晕了,怎么没有了数组字‘9'了,是系统的问题吗,怎么解决呢。谢谢!
2 发表于 2007-11-08 19:03 ·  中国 上海 静安区 中移铁通
初级用户
积分 48
发帖 23
注册 2007-10-24 09:46
18年会员
UID 100622
性别 男
状态 离线
我也运行了下
好象第一个%%里面只能放一个数?
高人来解
3 发表于 2007-11-08 20:30 ·  中国 广东 肇庆 电信
荣誉版主
★★★
积分 718
发帖 313
注册 2005-09-26 00:00
20年会员
UID 42844
性别 男
状态 离线
试试
set numbers= %9% %1% %2% %3% %4% %5% %6% %7% %8%
4 发表于 2007-11-08 21:31 ·  中国 湖北 宜昌 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
变量最好别用数字开头。
5 发表于 2007-11-08 21:49 ·  中国 江苏 无锡 电信
初级用户
积分 28
发帖 11
注册 2007-11-08 14:33
18年会员
UID 102062
性别 男
状态 离线
也是没有 9 啊
6 发表于 2007-11-09 00:07 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
很简单,批处理把第一位看作%1参数看了,而后面的变量,则便成了这样:

%1% %2% %3% %4% %5% %6% %7% %8% %9%

变量并不是%数字%,而是%(空格)%
7 发表于 2007-11-09 01:13 ·  中国 江苏 无锡 电信
初级用户
积分 28
发帖 11
注册 2007-11-08 14:33
18年会员
UID 102062
性别 男
状态 离线
如何给数组赋初值呢,我想要
a[1]=1,a[2]=2,...的效果
8 发表于 2007-11-09 13:48 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
@echo off
set a=1
set a=2
set a=3
set a=4
set a=5
for /l %%n in (1,1,5) do call echo %%a%%
pause


@echo off
setlocal enabledelayedexpansion
set a=1
set a=2
set a=3
set a=4
set a=5
for /l %%n in (1,1,5) do echo !a!
pause


[ Last edited by zh159 on 2007-11-9 at 01:49 PM ]
9 发表于 2007-11-09 15:59 ·  中国 广西 百色 电信
中级用户
★★
积分 265
发帖 92
注册 2006-11-29 23:08
19年会员
UID 72114
性别 男
来自 广西
状态 离线
顶顶顶顶顶顶顶~!~!学习中~!~!
论坛跳转: