tcl tk例項詳解 eval

2021-04-17 13:30:50 字數 624 閱讀 5973

eval命令本身使用非常簡單,但是用處非常大,如果需要動態的構造命令,那麼必須使用eval命令。

eval命令參考:

命令格式:evalarg ?arg ...?

如果是乙個引數,那麼相當於把這個引數當作命令來執行,如果有多個引數,eval命令會把多個引數以concat命令風格連線起來然後再執行命令。

舉乙個最簡單的例子:

% set cmd "puts /"this is a tcltk example/""

puts "this is a tcltk example"

% eval $cmd

this is a tcltk example

一般在動態指令碼中,主要是由指令碼片斷組成,指令碼片斷一般是乙個變數,根據實際情況進行變數修改來達到執行不同指令碼的目的。

% set a puts

puts

% set b stdout

stdout

% set c "haha"

haha

% eval $a $b $c

haha

tcl tk例項詳解 string(二)

這裡對string命令中的幾個子命令使用例項進行一些解釋,以便於更加容易理解string命令中的各個子命令,本文僅對以下幾個string命令進行例項解析。分別是repeat replace reverse tolower totitle toupper trim trimleft trimright...

tcl tk例項詳解 string(三)

這裡對string命令中的幾個子命令使用例項進行一些解釋,以便於更加容易理解string命令中的各個子命令,本文僅對三個比較複雜的命令進行例項解析。分別是is class map和match三個子命令。string isclass strict?failindexvarname?string 如果s...

tcl tk例項詳解 catch和error

這兩個命令可以成對出現,catch命令捕獲乙個錯誤,error命令產生乙個錯誤。catch命令參考 error命令參考 catch命令可以用來捕獲乙個錯誤,乙個沒有捕獲的錯誤將終止指令碼的執行。error會產生乙個錯誤,error命令產生的錯誤如果沒有被catch捕獲將會導致指令碼的終止。catch...