标题: [已解决]这两句(一个字一个字显示的代码)怎么理解
[打印本页]
作者: tireless
时间: 2008-9-25 13:22
标题: [已解决]这两句(一个字一个字显示的代码)怎么理解
@echo off
set /p=<nul
for %%a in (做 个 语 文 老 师 真 不 容 易 . 以 下 是 学 生 的 造 句 ) do set /p=%%a<nul&ping -n 1 127.1>nul
[
Last edited by tireless on 2008-9-26 at 08:18 AM ]
作者: moniuming
时间: 2008-9-25 13:51
这样呢?
@echo off
for %%a in (做 个 语 文 老 师 真 不 容 易 . 以 下 是 学 生 的 造 句 ) do set /p=%%a<nul&ping -n 1 127.1>nul
作者: tireless
时间: 2008-9-25 14:17
知道
set /p input= 和
set var=test,但
set /p=test 怎么理解?
作者: Vampire
时间: 2008-9-25 14:19
屏幕显示输入状态,并显示文字为TEST,但是没有变量名.
作者: tireless
时间: 2008-9-25 15:52
ping -n 1 127.1
>nul 能理解,是将 ping 的输出输出到空设备
但 set /p=%%a
<nul 不太懂
< 是将其后面的文件的内容作为其前面命令的输入
无法理解..
运行以下命令:
set /p=1 <nul
set /p=2 <nul
pause
在屏幕上显示:
C:\>set /p=1 0<nul
1
C:\>set /p=2 0<nul
2
C:\>pause
请按任意键继续. . .
0 又是哪来的?
作者: zqz0012005
时间: 2008-9-25 16:57
STDIN 0 键盘输入
命令解释器执行bat前要进行标准格式化,<nul其实就是0<nul,>nul就是1>nul
诸如此类
作者: hackate
时间: 2008-9-25 19:01
你可以将代码改成如下测试便能理解大概..
@echo off
set /p=请输入内容 1<nul
set /p=请输入内容 2<nul
set /p=请输入内容 0<nul
pause
看看结果你就知道了.
事实上,可能我们平时直接<nul,默认的值是0,只是我们不用输入,是默认的.我理解大概是这样,然后1和2 呢也是相对能这样解释
作者: ygrzzz
时间: 2008-9-25 23:03
set /p=%%a<nul 我理解是只显示提示“=后面的字符”,(这和set/p var=提示语,是相通的)
并且没有内容被输入而结束此命令语句
好处是这样的提示语能保持在同一行
如果后面跟个pause,连pause的提示也在这一行了
而echo必然会换行,在新行显示
1楼的 第2句我理解是多次连续左方向移动光标,此例中多余
[
Last edited by ygrzzz on 2008-9-25 at 11:09 PM ]