文法
#コメント
コマンド 引数1 引数2 ...
評価
- 行単位
- []
- {[]}
変数
型宣言は不要
型は基本的に文字列
代入はsetコマンド
set var hello
実行結果
hello
空白を含む文字列はダブルクォーテーションで囲む
set var "hello world"
実行結果
hello world
演算はexprコマンド
expr 1 + 2
実行結果
3
変数の取り出しは変数の冒頭に$をつける
set a 1
set b $a
実行結果
1
コンソールに出力する
```tcl put $a ``` ```:実行結果 10 ```配列
配列は後ろに()をつける
set Arr(1) 10
set Arr(2) 20
set Arr(1)
実行結果
10
リスト
要素を空白文字で区切って,全体を{}でくくる.
set list {10 20 30 40 50}
実行結果
10 20 30 40 50
if 文
if 条件式 処理
if 条件式 処理
サンプル
if {$i < 0 }{
set i 0
}
elseif
if {$i < 0} {
set i 0
} elseif {$i < 10} {
set i 10
} else {
set i 100
}
繰り返し
while
while 条件式 処理
while 条件式 処理
while {$n > 0} {
.....
incr n -1
}
for
for 初期化式 条件式 更新式 処理
for 初期化式 条件式 更新式 処理
for {set i 0} {$i < 10} {incr i} {
.....
}
foreach
for 変数 リスト 処理
for 変数 リスト 処理
foreach n {0 1 2 3 4} {
puts $n
}
プロシャージャ
proc コマンド名 引数リスト 本体
proc コマンド名 引数リスト 本体
proc square {x} {expr $x * $x}
グローバル変数
global c
参考: