Tcl - tablice
Tablica to systematyczne uporządkowanie grupy elementów za pomocą indeksów. Poniżej przedstawiono składnię konwencjonalnej tablicy.
set ArrayName(Index) value 
    Poniżej przedstawiono przykład tworzenia prostej tablicy.
#!/usr/bin/tclsh
set languages(0) Tcl
set languages(1) "C Language"
puts $languages(0)
puts $languages(1) 
    Wykonanie powyższego kodu daje następujący wynik -
Tcl
C Language 
    Rozmiar tablicy
Poniżej przedstawiono składnię obliczania tablicy rozmiarów.
[array size variablename] 
    Przykład drukowania rozmiaru jest pokazany poniżej.
#!/usr/bin/tclsh
set languages(0) Tcl
set languages(1) "C Language"
puts  [array size languages] 
    Wykonanie powyższego kodu daje następujący wynik -
2 
    Iteracja tablicy
Chociaż indeksy tablicy mogą być nieciągłe, podobnie jak wartości określone dla indeksu 1, a następnie indeksu 10 i tak dalej. Ale w przypadku, gdy są ciągłe, możemy użyć iteracji tablicy, aby uzyskać dostęp do elementów tablicy. Poniżej przedstawiono prostą iterację tablicy do drukowania elementów tablicy.
#!/usr/bin/tclsh
set languages(0) Tcl
set languages(1) "C Language"
for { set index 0 }  { $index < [array size languages] }  { incr index } {
   puts "languages($index) : $languages($index)"
} 
    Wykonanie powyższego kodu daje następujący wynik -
languages(0) : Tcl
languages(1) : C Language 
    Tablice asocjacyjne
W Tcl wszystkie tablice z natury są asocjacyjne. Tablice są przechowywane i pobierane bez określonej kolejności. Tablice asocjacyjne mają indeks, który niekoniecznie jest liczbą i może być rzadko wypełniany. Poniżej przedstawiono prosty przykład tablicy asocjacyjnej z indeksami nieliczbowymi.
#!/usr/bin/tclsh
set personA(Name) "Dave"
set personA(Age) 14
puts  $personA(Name)
puts  $personA(Age) 
    Wykonanie powyższego kodu daje następujący wynik -
Dave
14 
    Indeksy tablicy
Poniżej przedstawiono składnię pobierania indeksów tablicy.
[array names variablename] 
    Przykład drukowania rozmiaru jest pokazany poniżej.
#!/usr/bin/tclsh
set personA(Name) "Dave"
set personA(Age) 14
puts [array names personA] 
    Wykonanie powyższego kodu daje następujący wynik -
Age Name 
    Iteracja tablicy asocjacyjnej
Możesz użyć indeksów tablicy do iteracji po tablicy asocjacyjnej. Przykład jest pokazany poniżej.
#!/usr/bin/tclsh
set personA(Name) "Dave"
set personA(Age) 14
foreach index [array names personA] {
   puts "personA($index): $personA($index)"
} 
    Wykonanie powyższego kodu daje następujący wynik -
personA(Age): 14
personA(Name): Dave