DOS批處理命令-注釋


注釋是每個程序中不可或缺的(不是對計算機來說,而是對我們這些程序員閱讀代碼來說)

語法:

①rem 這是批處理的注釋命令,rem后面的內容全部是注釋

例:rem 這是一行注釋

②:: 批處理遇到以冒號“:”開頭的行時(忽略冒號前的空格),並且第二個:不是標簽的合法字符(把它換成\;.等等都行),它不被當作一個合法的標簽。自己不能被執行,也不能被當做標簽(goto語句無法跳轉得到),也不會被執行,這樣的一行不就跟注釋一樣么

 

例如下面代碼:

echo on
rem this is a comment.
echo this is a comment.
:: this is a comment too.
echo this is a comment too.

運行結果:

F:\tmp>echo on

F:\tmp>rem this is a comment.

F:\tmp>echo this is a comment.
this is a comment.

F:\tmp>echo this is a comment too.
this is a comment too.

 

從【rem this is a comment.】這一句可以看出,rem這是一個命令,但是不做任何處理。

而語句【:: this is a comment too.】沒有回顯到屏幕上,說明這個不是一個語句,當然也不是一個有效的標簽,這里我們就當做是注釋。

 

::這個后面真的不是標簽么?

我們接下來做一個驗證

echo on
goto comment
echo a
echo b
echo c
echo d
::comment
echo the last

運行結果是:

F:\tmp>goto comment
指定されたバッチ ラベルが見つかりません - comment【制定的batch標簽未找到 - comment】

所以,::comment不是一個有效的標簽,也不是一個有效的語句。哈哈,那這就是有效的注釋了。

 

批處理中利用批處理的語法特性,還有一些其他的注釋格式,個人不是很喜歡,僅僅是列出來,以望大家參考。

goto語句和標簽的使用,實現塊兒注釋,就是跳過goto語句和標簽之間的內容

echo off
goto comment
commentcommentcommentcomment commentcommentcomment commentcomment comment
:comment
echo the last

執行結果

F:\tmp>echo off
the last

可見,goto語句和標簽之間的內容被全部跳過,也不管那些內容是什么,些的對不對。

②%%百分號之間的內容都會幫當做注釋的

echo on
echo a
echo %ssss%b
echo c

%%里面的ssss會當做注釋給忽略掉,就跟不存在%ssss%這些字符一樣。

這種注釋你不是看着很眼熟呢?對的,這個本來是用來取變量值的,而由於我們注釋的內容,一般是沒有被賦值過,也就是說,這個變量的值是空的。所以,運行的時候,就忽略到中間的內容。

看看執行結果就知道了。

F:\tmp>echo on

F:\tmp>echo a
a

F:\tmp>echo b
b

F:\tmp>echo c
c

不過,這個注釋是不可以跨行的使用的,還有一點就是,單個出現的%會被忽略,剛才的那個語句如果寫成%ssss%%b,黃色標記的%在執行的會被忽略,也就是一行中,如果最后一個%落單后,就會被寂寞的消失在代碼的長河中。

 

rem 好了,別的也不廢話了,這些注釋已經夠你用了,就不要再花心了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM