<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Tcl 語法結構 > 原文: [https://zetcode.com/lang/tcl/lexis/](https://zetcode.com/lang/tcl/lexis/) 像人類語言一樣,計算機語言也具有詞匯結構。 Tcl 語言的詞匯包括基本元素和適用于它們的規則。 單詞是 Tcl 中的基本元素。 單詞可以是命令,也可以是命令參數。 替換是 Tcl 語法的基本規則之一。 ## 命令 Tcl 是基于字符串的解釋命令語言。 Tcl 腳本由命令組成,這些命令由換行符或分號分隔。 命令是基本的執行元素。 命令后跟一個或多個單詞(作為參數)。 每個參數都由空格分隔。 Tcl 命令的格式如下:`command arg1 arg2 arg3 ...` Tcl 解釋器接受句子的每個單詞并對其求值。 第一個單詞被認為是命令。 大多數 Tcl 命令是可變的。 這意味著它們可以處理可變數量的參數。 解析 Tcl 腳本后,將求值命令。 每個命令在其自己的上下文中解釋單詞。 ```tcl puts "Tcl language" ``` 在上面的代碼摘錄中,我們具有`puts`命令。 此命令將消息打印到控制臺。 `"Tcl language"`是正在打印的字符串。 與其他語言不同,字符串不能用雙引號引起來; 除非有空白。 ```tcl #!/usr/bin/tclsh puts zetcode.com; puts androida.co puts zetcode puts androida ``` 在第一種情況下,命令用分號`;`字符分隔。 在第二種情況下,它們之間用換行符分隔。 ## 替換 Tcl 中存在三種替換。 * 命令替換 * 變量替換 * 反斜杠替換 方括號用于命令替換。 ```tcl % puts [expr 1+2] 3 ``` `expr`命令用于執行算術計算。 首先,求值方括號之間的命令,并將結果返回到`puts`命令。 然后,`puts`命令求值結果并將其打印到控制臺。 如果單詞包含美元符號`$`,則 Tcl 執行變量替換。 單詞中的美元符號和以下字符由變量的值替換。 ```tcl #!/usr/bin/tclsh set name Jane puts name puts $name ``` 我們創建一個名為`name`的變量,并為其設置一個值。 ```tcl puts name ``` 在這種情況下,我們將字符串`name`打印到控制臺。 ```tcl puts $name ``` 在第二種情況下,參數以`$`字符開頭。 `name`變量的值被打印到控制臺。 ```tcl $ ./name.tcl name Jane ``` 這是示例的輸出。 通過反斜杠替換,我們可以擺脫字符的原始含義。 例如,`\n`代表換行,`\t`是制表符。 ```tcl % puts "This is \t Sparta" This is Sparta ``` 在這里,`\t`序列被制表符代替。 ```tcl #!/usr/bin/tclsh puts "This was a \"great\" experience" puts "The \\ character is the backslash character" puts "20000\b\b miles" ``` 如果要在引號字符中包含引號,請使用反斜杠替換。 另外,如果要打印`\`字符,則必須在其前面加上其他反斜杠。 `\b`替換為退格鍵。 ```tcl $ ./backslash.tcl This was a "great" experience The \ character is the backslash character 200 miles ``` 運行示例。 ## 注釋 人們使用注釋來澄清源代碼。 在 Tcl 中,注釋以`#`字符開頭。 ```tcl # example of a puts command puts "Tcl language" ``` `tclsh`會忽略`#`字符之后的所有字符。 ```tcl puts "Tcl language" ; # example of a puts command ``` 僅當使用分號時才可以進行內聯注釋。 ## 空格 空白用于分隔 Tcl 源中的單詞。 它還用于提高源代碼的可讀性。 ```tcl set name Jane ``` `set`命令采用兩個參數,兩個參數之間用空格隔開。 ```tcl set age 32 set name Robert set occupation programmer ``` 如果要提高源代碼的清晰度,我們可能會使用更多空間。 ```tcl set vals { 1 2 3 4 5 6 7 } puts $vals ``` 空白用于分隔 Tcl 列表中的項目。 在基于 C 的語言中,我們將使用逗號字符。 ## 變量 變量是保存值的標識符。 在編程中,我們說我們為變量分配或設置了一個值。 從技術上講,變量是對存儲值的計算機內存的引用。 變量名稱區分大小寫。 這意味著`Name`,`name`和`NAME`引用了三個不同的變量。 Tcl 中的變量是使用`set`命令創建的。 要獲取變量的值,其名稱前面帶有`$`字符。 ```tcl #!/usr/bin/tclsh set name Jane set Name Julia set NAME Erika puts $name puts $Name puts $NAME ``` 在上面的腳本中,我們設置了三個變量。 變量名稱相同,只是大小寫不同。 但是,不建議這種做法。 ```tcl $ ./case.tcl Jane Julia Erika ``` 這是`case.tcl`腳本的輸出。 ## 大括號 大括號`{}`在 Tcl 中具有特殊含義。 大括號內的單詞替換已禁用。 ```tcl #!/usr/bin/tclsh set name {Julia Novak} puts $name puts "Her name is $name" puts {Her name is $name} ``` 這是一個小腳本,顯示了 Tcl 中花括號的用法。 ```tcl set name {Julia Novak} ``` 可以使用大括號代替雙引號來設置以空格分隔的字符串。 ```tcl puts "Her name is $name" ``` 在此變量被替換。 ```tcl puts {Her name is $name} ``` 使用花括號時,變量不會被替換。 一切都按字面意思打印。 ```tcl $ ./braces.tcl Julia Novak Her name is Julia Novak Her name is $name ``` `braces.tcl`腳本的輸出。 ```tcl #!/usr/bin/tclsh set numbers { 1 2 3 4 5 6 7 } puts $numbers puts "Braces {} are reserved characters in Tcl" puts {Braces {} are reserved characters in Tcl} ``` 大括號用于創建列表。 列表是 Tcl 中的基本數據類型。 ```tcl set numbers { 1 2 3 4 5 6 7 } ``` 在此處創建數字列表。 ```tcl puts "Braces {} are reserved characters in Tcl" puts {Braces {} are reserved characters in Tcl} ``` 雙引號或其他大括號內的大括號被視為常規字符,沒有特殊含義。 ```tcl $ ./braces2.tcl 1 2 3 4 5 6 7 Braces {} are reserved characters in Tcl Braces {} are reserved characters in Tcl ``` `braces2.tcl`腳本的輸出。 ## 方括號 方括號`[]`用于創建嵌套命令。 這些嵌套命令在 Tcl 源代碼行上的 main 命令之前執行。 它們用于將一個命令的結果作為參數傳遞給另一命令。 ```tcl #!/usr/bin/tclsh set cwd [pwd] puts $cwd puts [clock format [clock seconds] -format "%Y-%m-%d %T"] ``` 在上面的代碼示例中,我們顯示了一些嵌套命令。 ```tcl set cwd [pwd] ``` `pwd`命令返回腳本的當前工作目錄。 它放在方括號之間,使其成為嵌套命令。 首先執行`pwd`命令,然后將命令的結果設置為`cwd`變量。 ```tcl puts [clock format [clock seconds] -format "%Y-%m-%d %T"] ``` 嵌套命令可以嵌套在其他嵌套命令中。 首先,執行`clock seconds`。 它以秒為單位返回當前本地時間。 結果傳遞到`clock format`命令,該命令以可讀形式格式化時間。 最后,格式化的時間返回到`puts`命令,該命令將其打印到控制臺。 ```tcl $ ./nested.tcl /home/janbodnar/prog/tcl/lexis 2015-01-16 16:45:04 ``` 示例的輸出。 ## 雙引號 雙引號將單詞組合為命令的單個參數。 美元符號,方括號和反斜杠在引號內解釋。 ```tcl #!/usr/bin/tclsh set distro Ubuntu puts "The Linux distribution name is $distro" puts "The current working directory: [pwd]" puts "2000000\b\b\b miles" ``` 這是在 Tcl 中使用引號的實際示例。 ```tcl puts "The Linux distribution name is $distro" ``` 變量發行版在引號字符內求值。 `$distro`被替換為`"Ubuntu"`。 ```tcl puts "The current working directory: [pwd]" ``` 方括號內的命令也會被解釋。 在這里,我們使用`pwd`命令獲取當前的工作目錄。 ```tcl puts "2000000\b\b\b miles" ``` `\b`轉義序列刪除前一個字符。 在我們的例子中,三個零被刪除。 ```tcl $ ./quotes.tcl The Linux distribution name is Ubuntu The current working directory: /home/janbodnar/prog/tcl/lexis 2000 miles ``` `quotes.tcl`示例的輸出。 ## 反斜杠 反斜杠字符可以在 Tcl 中以三種不同的方式使用。 它引入了一些特殊字符,稱為轉義序列。 這些可以是換行符,選項卡,退格鍵等等。 它轉義了特殊 Tcl 字符(`$, {}, "", \, ()`)的含義。 最后,它可以用作換行符。 ```tcl #!/usr/bin/tclsh puts "0\t1" set name Jane puts \$name puts \\$name puts "He said: \"There are plenty of them\"" puts "There are currently many Linux\ distributions in the world" ``` 上面的腳本顯示了如何在 Tcl 中使用反斜杠字符。 ```tcl puts "0\t1" ``` `\t`字符在 Tcl 中具有特殊含義。 它代表制表符空白字符。 當我們執行腳本時,在 0 和 1 內放置 8 個空格。 ```tcl puts \$name ``` 有了反斜杠,我們就可以擺脫美元符號的含義。 在我們的情況下,將`$name`字符打印到控制臺。 ```tcl puts \\$name ``` 反斜杠也可以轉義。 這里,反斜杠字符和`name`變量的值被打印到控制臺。 ```tcl puts "He said: \"There are plenty of them\"" ``` 我們可以通過轉義內部雙引號的含義來形成直接語音。 ```tcl puts "There are currently many Linux\ distributions in the world" ``` 如果源行太寬,我們可以使用反斜杠字符繼續下一行,轉義換行符。 ```tcl $ ./backslash.tcl 0 1 $name \Jane He said: "There are plenty of them" There are currently many Linux distributions in the world ``` 運行示例。 ## 圓括號 圓括號用于指示數組下標或更改`expr`命令的運算符的優先級。 ```tcl #!/usr/bin/tclsh set names(1) Jane set names(2) Robert puts $names(1) puts $names(2) puts [expr (1+3)*5] ``` 這是一個簡單的示例,在 Tcl 中帶有圓括號。 ```tcl puts $names(1) ``` 我們使用圓括號通過圓括號內指定的鍵訪問值。 ```tcl puts [expr (1+3)*5] ``` 在這里,我們更改了運算符的優先級。 首先將 1 和 3 相加,然后將結果乘以 5。 ```tcl $ ./roundb.tcl Jane Robert 20 ``` 這是`round.tcl`腳本的輸出。 在本章中,我們描述了 Tcl 語言的詞匯。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看