网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月22日漏签0天
bat吧 关注:16,756贴子:231,789
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 18回复贴,共1页
<<返回bat吧
>0< 加载中...

是时候彻底放弃rem了!

  • 只看楼主
  • 收藏

  • 回复
  • 皇叔有异议
  • Ntsd
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
众所周知,批处理中常见的三种注释方法有三种:
1.remXXX:注释的最正确方式;
2.::XXX:实质上是无意义的label,":"后面接";"、"#"还是别的什么都可以。比rem省1字节,但在复合语句中会出错;
3.%=XXX=%:实质上是错误的变量。利用了变量名不能包含等号这一特点,便可以在其中自由输入任意字符(%除外)。这个方法比"::"要多2字节,但是可以随意放在代码的任何地方,非常方便。
一直以来,我都错误的认为,rem的速度应该是最快的,其次才是"::"和"%==%",毕竟rem才是官方正统的注释命令。有一天,我突然想测试一下rem到底比其它两种注释快多少。正所谓“实践是检验真理的唯一标准。”本着吃扒皮没事干的精神,我开始了实验。结果,令人大跌眼镜。


  • 皇叔有异议
  • Ntsd
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
实验采用了4台不同的设备,分别运行4个bat文件进行对照实验。这四个文件分别是:
0.无注释情况下goto loop1000次;
1.只包含rem,loop1000次;
2.只包含::,loop1000次;
3.只包含%==%,loop1000次。
每个bat文件都运行10次,然后求平均值,再将123组的数据减去0组的数据即可得到对应注释运行1000次所需的时间。
实验所用文件在此获取:https://pan.baidu.com/s/1LPj1-18qbcIpB0QSli8ogQ


2025-05-22 13:18:29
广告
  • 皇叔有异议
  • Ntsd
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
那么上数据:
第一组:(单位:ms/千次)
rem:46.4
:::11.9
%==%:12.7
第二组:
rem:11
:::1.6
%==%:1.8
第三组:
rem:12.7
:::2.1
%==%:3.1
第四组:
rem:5.7
:::3.2
%==%:3.4


  • 皇叔有异议
  • Ntsd
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
结语:
由上面的数据我们可以得知,rem的速度远远差于::和%==%。虽然每千次也只有几毫秒的差异,但累积起来也非常可怕。更何况rem本身既没有::简洁好看,又不如%==%使用方便,可以说是完全没有优点可言了。
官方指定的注释命令居然不如民间靠bug鼓捣出来的注释方法,这背后究竟有何原因,这就不得而知了。


  • 皇叔有异议
  • Ntsd
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
对了,再补充一个多行注释的方法:
goto 注释
XXX
XXX
XXX
:注释
这个注释的速度就等同于goto的速度了


  • 真腐坏科技
  • Net
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
围观


  • aiwozhonghuaba
  • Findstr
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
围观


  • 梦核星
  • More
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这个可以用,时间未测试过。
@echo off
for /l %%i in (1,1,10) do (
if "1"=="0" (
注释 111
注释 222
注释 333
注释 444
注释 555
注释 666
)
echo;运行数:%%i
)
pause


2025-05-22 13:12:29
广告
  • JohnA
  • Findstr
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
vsc语法高亮会把::视为注释,貌似算官方?


  • 贴吧用户_Q2tStCN
  • Pushd
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 失控的疯子
  • For
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 贴吧用户_5bKeA7R219
  • Set
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
dalao


  • 四季sw
  • Start
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
以前看过一个这种测试注释解析时间的。
还有过一个测试【echo】后面的字符的解析时间。
echo ***
echo,***
echo.***
echo/***
echo\***
echo:***
echo;***
echo[***
echo]***


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 18回复贴,共1页
<<返回bat吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示