中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: rem的一个bug?? 上一主题 | 下一主题
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『楼 主』:  rem的一个bug??


:p
set /a n+=1 rem 自加一 2>nul
echo %n%
pause
这个有没有人注意到啊?
这一句
set /a n+=1 rem 自加一 2>nul
就等价于
rem 自加一
set /a n+=1
是rem的一个bug还是...?

2007-9-13 17:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 2 楼』:  

还有一个
call :l 22 rem 将22作为参数传递给:l标号处以便后续处理 2>nul


2007-9-13 17:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 3 楼』:  

goto :p


goto :p rem 跳转

goto :p rem 跳转 2>nul
是一样的效果


这里的rem又起到什么作用了
用于不用
似乎没有太大影响啊!

2007-9-13 17:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 4 楼』:  

这样,我是想
以后要对那个语句做注释的时候
就不一定要另起一行了
可以直接在某些命令的后面空格后
直接写 rem ...... 2>nul
这个也未尝不是一个小技巧
注意的是
echo 后面似乎不行
它会被echo直接输出

2007-9-13 17:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ThinKing
中级用户





积分 471
发帖 207
注册 2007-5-3
状态 离线
『第 5 楼』:  

并非REM的BUG,楼主注意rem后面都有一个2>nul,证明还是有错误信息出现,只是被2>nul给屏蔽罢了。

至于 “goto :loop rem 。。” 后面没有“2>nul”,是因为 goto 之后的标签对空格不起作用,也就是只有空格前的标签才有效。

例子:
@echo off
echo 1
echo 2
goto :loop this is a label
echo 3
echo 4
:loop that is not a label
echo the end
pause


2007-9-13 20:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 6 楼』:  

to thinking:
  有是你啊!
  你所指的那个,我注意到了
故此,在后面加了个 2>nul

但是逻辑上: 2>nul是屏蔽出错信息么?
若只是这样
为什么 set /a .... rem....
仍然能给出正确的结果?
怎么解释这种机制!?

2007-9-13 20:27
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ThinKing
中级用户





积分 471
发帖 207
注册 2007-5-3
状态 离线
『第 7 楼』:  

set /a ... rem ... 这个虽然会报错,但是报错并不代表前面的set /a n+=1部分不进行计算,是仍然可以运行的,所以可以得到结果。

2007-9-13 21:19
查看资料  发短消息 网志   编辑帖子  回复  引用回复
scriptor
银牌会员




积分 1187
发帖 555
注册 2006-12-21
状态 离线
『第 8 楼』:  

看来只能从预处理来理解了
呵呵......

2007-9-13 21:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: