标题: [其他] 求助批处理set命令的2个语句的解释及答案? [打印本页]
作者: oett 时间: 2011-11-29 16:20 标题: 求助批处理set命令的2个语句的解释及答案?
小弟新来的,看不懂,正在学,谁给解释下?有些会,有些不会,比如下面这2个,没看懂!!
set/a a=55^<^<5该命令的结果是?
set/a "leap=!(2012%4)^!(2012%100)|!(2012%400)"该命令的结果是?
作者: CrLf 时间: 2011-11-29 16:43
本帖最后由 CrLf 于 2011-11-29 20:10 编辑
本贴标题修改后已基本符合版规,故收回原警告贴。
作者: 小胖狐狸 时间: 2011-11-29 16:53
第一个:55转换成二进制后,左移5位,^在这里是转义符 << 是左移的意思
左移5位相当于乘以2的5次方
第二个代码:判断2012年是否闰年——只适用于在cmd窗口直接执行命令,如果写入bat,要将其中的%换成%%
2012%100 这是拿2012除以100后取余数,前面加个!,就是对余数进行运算,如果余数非0,就改成0,如果余数为0,就改成1
bat代码可参考:- @echo off
- set/p year=请输入年份:
- set/a num=!(year%%4)^&!(!(year%%100))^|!(year%%400)
- if %num% equ 0 (echo 平年) else (echo 闰年)
- pause
复制代码
作者: oett 时间: 2011-11-29 17:33
谢谢小胖
作者: newfish 时间: 2011-11-30 16:02
我觉得批处理 运算 很强。。 但是用的不多。。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |