Board logo

标题: 请帮忙解释一下这个代码 [打印本页]

作者: gorke     时间: 2007-6-29 19:54    标题: 请帮忙解释一下这个代码

@echo off
:star
set Output=
set /p Enter=请输入:
:Start
if not "%Enter%"=="" (
set Output=%Output%%Enter:~-1%
set Enter=%Enter:~0,-1%
goto :Start)
echo.
echo        %Output%
pause >nul&goto :Star


请问谁能帮我解释一下上面的代码是什么意思~!
谢谢了~!
最好能详细点~!

[ Last edited by bjsh on 2007-7-31 at 10:30 AM ]
作者: heicai     时间: 2007-6-29 19:59
@echo off
:star   ‘行标
set Output=  ’设置变量
set /p Enter=请输入:    ‘获取输入的值
:Start  ’行标
if not "%Enter%"=="" (     ‘如果输入的值不是空,则……
set Output=%Output%%Enter:~-1%    ’我也不懂
set Enter=%Enter:~0,-1%     ‘我也不懂
goto :Start)    ’到start的那行起
echo.    ‘换行
echo        %Output%    ’输出Output环境变量的值
pause >nul&goto :Star     ‘暂停并到star的行



我也比较菜,只能帮你到这里了。
另外弱弱的提醒一句,楼主注意标题格式喔
作者: gorke     时间: 2007-6-29 20:02
还是 谢谢了~!不过你不懂的地方恰恰是我不懂的~!
我寒~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: wudixin96     时间: 2007-6-29 20:10
set Output=%Output%%Enter:~-1%    ’就是赋值啦,把output变量的值加上enter变量的倒数第一个值赋值给output变量
set Enter=%Enter:~0,-1%     ‘把enter变量从第一位开始取,取到倒数第二位(-1代表不取倒数第一位)赋值给变量enter
作者: wudixin96     时间: 2007-6-29 20:11
在cmd里输入set /?有详细说明的
作者: gorke     时间: 2007-6-29 20:12
多谢强人~!偶去 看看~!
作者: gorke     时间: 2007-6-29 22:39
谢谢强人~!我已经完全明白了~!