如何使用另一个变量获取变量的名称? 现在我正在做一个名为" Cube"的小项目。这是一个生存模拟器。无论如何,我遇到了一个问题,但如果没有办法让这成为可能,我会做很长的路。无论如何,这是我的代码(批处理)
:UseItem
title Cube - Use Item
cls
echo Cube: Choose An Item To Use
call %name%.bat
echo 1. %slot1%
echo 2. %slot2%
echo 3. %slot3%
echo 4. %slot4%
echo 5. %slot5%
echo 6. %slot6%
echo 7. %slot7%
echo 8. %slot8%
echo 9. %slot9%
set /p input=Choice:
set SlotChosen=slot%input%
if %%SlotChosen%%==BlueBerry goto EatBlue
所以我试图做的是因为SlotChosen将是插槽(播放器的输入),例如,slot1,slot1将被%包围,这样它就获得了变量的名称。 (这只是代码的一个片段。)我也在我的程序中启用了delayexpansion。
答案 0 :(得分:3)
两种选择。
一个使用延迟扩展。
set SlotChosen=!slot%input%!
另一个使用CALL和SET命令来获得额外的扩展阶段。
call set SlotChosen=%%slot%input%%%