中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-23 16:09
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行
DOS批处理 & 脚本技术(批处理室) » 求助 关于set /p
可打印版本  1,152 / 5
第1楼 kcdsw 发表于 2006-05-31 11:14
中级用户 发帖 179 积分 404
求助 关于set /p

它的运算是不是不支持小数点?

另外



这样会提示错误 是bug么?

[ Last edited by kcdsw on 2006-5-31 at 12:18 ]
第2楼 bagpipe 发表于 2006-05-31 15:24
银牌会员 发帖 425 积分 1,144 来自 北京
因此, 0x12 与 18 和 022
相同。请注意八进制公式可能很容易搞混: 08 和 09 是无效的数字,
因为 8 和 9 不是有效的八进制位数。

这不是BUG,而且LZ用/P好像不应该吧,那/A干什么用的,好好看看帮助在说吧
第3楼 bagpipe 发表于 2006-05-31 15:30
银牌会员 发帖 425 积分 1,144 来自 北京
如果LZ就是需要这样做,那只能把变量a的数值设置成011或者010,011表示9,010表示8,八进制里是没有08 09 这两个数的,十进制的10,用八进制表示是012,楼主应该明白了吧!!!!!!!
第4楼 kcdsw 发表于 2006-05-31 19:32
中级用户 发帖 179 积分 404
呵呵 /p 是写错了


我明白了 当包含0前缀的时候 它会当作8进制来处理

[ Last edited by kcdsw on 2006-5-31 at 19:34 ]
第5楼 kcdsw 发表于 2006-05-31 19:55
中级用户 发帖 179 积分 404



主要是用来计算前后时间差的 不知道论坛有没有哪个高手写过
请指正
第6楼 willsort 发表于 2006-06-01 01:40
元老会员 发帖 1,512 积分 4,432
Re kcdsw:

此主题将被移动至批处理室。建议楼主修改主题的标题。

时间解析和运行的讨论本论坛曾经进行过,你也可以参考Ritchie Lawrence编写的Batch函数库,或者参考下面的示例代码。

你的代码没有什么大的问题,只是为防止零前缀被set/a识别为八进制数,而将提取出的时间元素加前缀1,无法同时兼容处理类似8:09这样的不含前缀0的时间格式,尽管这种情形很合少出现。

另外,可以确定的是,set /a确实不支持浮点数运算。

(已结)如果在WINDOWS下DOS命令行删除N天以前的文件
http://www.cn-dos.net/forum/viewthread.php?tid=16676

Batch Function Library for Windows NT4/2000/XP/2003
http://www.commandline.co.uk/lib/treeview/index.php

DateDiff.cmd


[ Last edited by willsort on 2006-6-1 at 15:01 ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023