目錄
簡單的Tcl對象
字元串表示
清單 - List
關聯數組
句柄
原始資料類型在Tcl中是字元串,我們常常可以找到字元串和引用在Tcl語言中。這些原始資料類型依次建立複合資料類型清單和關聯數組。在Tcl中,資料類型可以表示不僅是簡單Tcl的對象,但也可以代表相同的句柄,圖形對象(主要是小部件)複雜的對象,和I/O通道。讓我們來看看詳細介紹每一個上面。
在Tcl中,無論它是一個整數,布爾,浮點數,或一個字元串。當使用一個變量,可以直接指派給它,Tcl沒有聲明一步。可以有内部表示為這些不同類型的對象。它可以将一個資料類型到其它需要時。配置設定值給變量的文法如下。
#!/usr/bin/tclsh
set myVariable 18
puts $myVariable
當上述代碼被執行時,它會産生以下結果。
18
上述聲明将建立一個變量名myVariable,并将其存儲為一個字元串,即使我們沒有使用雙引号。現在,如果試圖讓該變量的運算,它會自動變成一個整數。一個簡單的例子如下所示。
#!/usr/bin/tclsh
set myVariable 18
puts [expr $myVariable + 6 + 9]
33
需要注意的一個重要的事情是,這些變量并沒有任何預設值,必須指定的值在使用之前。
如果我們嘗試使用puts來列印,這個數字被轉化為正确的字元串。有兩種表示方法,内部和外部,幫助 Tcl 建立複雜的資料結構很容易相對于其他語言。另外,Tcl 更有效,因為它是動态對象的性質。
不同于其他語言,在TCL,不需要包含雙引号,它隻有一個字。一個例子如下,
#!/usr/bin/tclsh
set myVariable hello
puts $myVariable
hello
當我們想表示多個字元串,可以使用雙引号或大括号。它如下所示。
#!/usr/bin/tclsh
set myVariable "hello world"
puts $myVariable
set myVariable {hello world}
puts $myVariable
hello world
hello world
清單不過是一組元素。一組單詞或者使用雙引号或大括号可以用來表示一個簡單的清單。一個簡單的清單如下所示。
#!/usr/bin/tclsh
set myVariable {red green blue}
puts [lindex $myVariable 2]
set myVariable "red green blue"
puts [lindex $myVariable 1]
blue
green
關聯數組有一個索引(key)但不一定是整數。人們普遍認為就像鍵值對是字元串。一個簡單的例子如下所示。
#!/usr/bin/tclsh
set marks(english) 80
puts $marks(english)
set marks(mathematics) 90
puts $marks(mathematics)
80
90
set myfile [open "filename" r]