Tcl中的注釋符為井號(hào)#,但井號(hào)#的位置是有所講究的,即它必須位于命令的第一個(gè)字符。從這個(gè)角度而言,Tcl的注釋和命令處于同一層次,這意味著一個(gè)注釋要占用一個(gè)命令位置??匆粋€(gè)簡(jiǎn)單的例子。在這個(gè)例子中,第一條注釋獨(dú)自占據(jù)一行并以#開始,因此該注釋是合法的;第二條注釋盡管和set命令在同一行,但set命令后緊隨分號(hào),表明命令結(jié)束,故該注釋也是合法的;第三條注釋中,#出現(xiàn)在set命令中間,并不是命令的第一個(gè)字符,而被當(dāng)做set命令的一部分,從而造成set命令參數(shù)設(shè)置不合理。

如果在注釋語(yǔ)句中出現(xiàn)了反斜杠,那么即便另起一行,該行仍被認(rèn)為是注釋的一部分。如下圖所示。

如果需要注釋掉大段的代碼塊,可采用如下三種方法。
方法1:采用if語(yǔ)句
這個(gè)方法是被普遍接受的方法,如下圖所示。由于if條件判斷始終為0,故花括號(hào)中的代碼塊將不會(huì)被執(zhí)行。
方法2:利用花括號(hào)注釋
Tcl中花括號(hào)如果用做參數(shù)分組,則其內(nèi)部置換均被阻止,故可利用此特性實(shí)現(xiàn)大段代碼塊的注釋,如下圖所示。
方法3:利用過(guò)程proc
Tcl中的proc類似于C語(yǔ)言中的函數(shù),只有當(dāng)函數(shù)被調(diào)用時(shí),該函數(shù)才會(huì)被執(zhí)行。同樣地,只有該過(guò)程proc被調(diào)用,才會(huì)被做為命令去執(zhí)行。如下圖所示。commented_out沒(méi)有參數(shù)(過(guò)程名后的花括號(hào)為空),且該過(guò)程在后續(xù)腳本中沒(méi)被調(diào)用,從而達(dá)到了注釋的目的。
上述三種方法最終執(zhí)行的結(jié)果如下圖所示,可以看到x的值時(shí)鐘是100,同時(shí)y并沒(méi)有被賦值,從而驗(yàn)證了該方法的有效性。
Tcl中采用反斜杠可實(shí)現(xiàn)續(xù)航。需要注意的是反斜杠后面同一行不能跟隨任何字符包括空格和制表符,否則續(xù)行功能將無(wú)效。如下圖所示。第一個(gè)反斜杠后直接回車換行,故變量a的值即為hello;第二個(gè)反斜杠后有空格,變量x被賦值為空格,此時(shí)反斜杠起到置換的作用,而不是續(xù)行的功能。
結(jié)論:
-Tcl中的注釋需要以#開始,且#應(yīng)位于命令位置的第一個(gè)字符
-Tcl中的續(xù)行通過(guò)反斜杠來(lái)實(shí)現(xiàn),但反斜杠后不能跟其他字符
-
C語(yǔ)言
+關(guān)注
關(guān)注
183文章
7646瀏覽量
146096 -
TCL
+關(guān)注
關(guān)注
11文章
1815瀏覽量
91778 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4421瀏覽量
67815
原文標(biāo)題:注釋與續(xù)行
文章出處:【微信號(hào):Lauren_FPGA,微信公眾號(hào):FPGA技術(shù)驛站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
HarmonyOSAI編程編輯區(qū)代碼續(xù)寫
錯(cuò)誤轉(zhuǎn)換發(fā)生在“ template * .ftl”生成的文件的注釋行中
STM32Cube IDE執(zhí)行注釋行的問(wèn)題求解
關(guān)于Java的注釋
TCL董事長(zhǎng)坦言實(shí)施3+1行業(yè)架構(gòu)調(diào)控三網(wǎng)融合議案
C語(yǔ)言的續(xù)行符使用資料講解
TCL電視因面板漲價(jià),在美國(guó)賣場(chǎng)陸續(xù)下架
TCL電視因線下缺貨陸續(xù)下架美國(guó)市場(chǎng)
C語(yǔ)言如何注釋以及在哪兒注釋
代碼即注釋,注釋即代碼的概念是如何形成的
Tcl的注釋與續(xù)行
評(píng)論