什么是批处理脚本中的数组及其工作原理?

Moh*_*adi 1 arrays batch-file

我想知道Batch Scripting中的Arrays是什么以及它的工作原理是什么?为什么我们需要在批处理文件中使用数组?

我知道我们可以使用SETFOR命令来创建一个数组,但不知道为什么我们必须使用它.

非常感谢!

@echo off
set len=3
set obj[0].Name=Joe
set obj[0].ID=1
set obj[1].Name=Mark
set obj[1].ID=2
set obj[2].Name=Mohan
set obj[2].ID=3
set i=0
:loop
if %i% equ %len% goto :eof
set cur.Name=
set cur.ID=
for /f "usebackq delims==. tokens=1-3" %%j in (`set obj[%i%]`) do (
set cur.%%k=%%l
)
echo Name=%cur.Name%
echo Value=%cur.ID%
set /a i=%i%+1
goto loop
Run Code Online (Sandbox Code Playgroud)

为什么我们必须在批处理脚本中使用此类代码

MC *_* ND 6

你没有"必须"使用数组,你"可以"使用语言提供或允许你使用的工具,但在这种情况下,该工具甚至不存在.

批处理文件的语法不包括数组

但是,我们可以模拟它们的存在(以及二叉树,链表,定义的类型......).批处理解析器只能看到变量,变量名称允许检索存储的信息,它是我们的命名,以及我们如何编码存储/检索操作,这些操作创建了我们对数组的感知.

  • @Aacini,对不起,我不能同意你的观点.一个问题是*"批处理脚本中的数组是什么以及它的工作原理是什么?"*需要这种答案(当然,包括你答案的链接).只是我的意见,但我认为数据类型和数据结构是软件开发的基础.是否迂腐,*开发人员*(我会考虑作为开发人员,对数据表示有兴趣和感兴趣)*不应该误解或不知道数据存储的方式或位置*. (2认同)