电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOC文档下载
分享到微信 分享到微博 分享到QQ空间

tcl基本语法与指令

  • 资源ID:34213458       资源大小:313KB        全文页数:34页
  • 资源格式: DOC        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

tcl基本语法与指令

第 1 頁,共 36 頁TCL Tutorial基本語法與指令Original written by Rick In 2003Revision by maa In 2004/6第 2 頁,共 36 頁目錄一、TCL 簡介.3二、TCL 語法.4三、資料型態.9String 字串資料態.9List 串列資料型態.17Array 陣列資料型態.20四、控制結構.22If Then Else.23Switch.24While.26For.27Foreach.28Break 與 Continue.29Catch.29五、Procedure.30第 3 頁,共 36 頁六、TCL 內建指令.32第 4 頁,共 36 頁一、TCL 簡介TCL 的全名為 Tool Command Language,唸作”Tickle”,事實上它是一個Scripting Language(俗稱劇本語言或腳本語言) ,也是一個直譯器(Interpreter) 。TCL 語言有三個特色:1. 語法簡單,容易上手2. TCL 的身份如同 UNIX 裡的 Shell languages 像是 Bourne Shell (sh)、C Shell (csh)、Korn Shell (ksh) 與 Perl 一樣,用來執行與控制系統上的程式。TCL 具備足夠的程式化能力 (variable、flow control、procedure) 與存取檔案、程序 (Process) 及網路的功能,供組裝既有軟體元件以建立符合需求的新工具。3. 可內嵌 (embed) 到應用程式中,讓軟體使用者透過程式員提供的高階 TCL 指令,自訂應用程式的行為。除了上列三個主要特色外,底下所列的幾點也是 TCL 語言成功的原因: 跨平台,可在各種系統 (UNIX、Windows 、 Macintosh 等) 執行 TCL 程式 強大的字串處理能力常規表示式 (Regular Expressions) ,協助程式員使用表示式的規則或樣式 (pattern),用來搜尋、比對、粹取或是取代符合樣式的複雜字串。 可用 C 語言開發 TCL Extension Library,擴充 TCL 的指令與能力,例如著名的 Tk extension 讓 TCL 擁有 GUI Programming 的功能、expect extension 用來開發可與應用程式互動式溝通的程式。 已有一大堆可在各式場合發揮效用的 package,諸如各種網路應用(ftp, http、email, dns, msn, icq 等) 、圖形化介面開發 (TK, BWidget, Tktable, SpecTCL, VisualTCL, ActiveState KOMODO)、物件導向程式開發 (incrTcl, XOTcl, SNIT 等) 以及資料庫程式開發 (MetaKit, daFT 等)。總結來說,TCL 語言就像是一瓶膠水一般,只要收集可資運用的應用程式與 TCL Package,在這些介面上塗塗抹抹,寫個簡單的 TCL Script (TCL 指令的集合),在短暫的時間內就可組裝出一個新工具來。因此寫 TCL Script 開發軟體的過程就像是在玩樂高積木一般。第 5 頁,共 36 頁二、TCL 語法TCL Script 可視為一個包含許多 TCL 指令 (TCL command) 的程式,一個 TCL 指令的基本語法為:command arg1 arg2 arg3 . 在 TCL 語言中,每行指令的第一個單字為指令名稱 空白字元用來分隔指令名稱與各個個別的參數 個別指令的分隔是以分號與換行符號作為分隔符號 一個參數如果超過一個英文單字 (亦即字串中間穿插空白或其它符號 ),可用雙引號與大括號將這些元素組成 (grouping) 單一一個參數。使用雙引號與大括號的差別,在於 TCL 針對雙引號中的字串會做置換處理 (substitution),例如變數值的代換或是執行包含於字串中的 TCL 指令(使用中括號來表示),而對於大括號所括住的內容 TCL 則不會有這些置換處理。底下是一個簡單的 TCL Script 與執行後的輸出:# Demo1.tclputs stdout one; puts stdout twoset x 4set y 6puts "$x + $y = expr $x + $y"puts $x + $y = expr $x + $yputs "HellonnTCL!"% ./Demo1.tclonetwo4 + 6 = 10$x + $y = expr $x + $yHelloTCL!下表所列的符號在 TCL 語言裏有特殊的意義:第 6 頁,共 36 頁置換符號 (substitution symbols)$ 變數值置換符號。$ 符號用來取出指定變數的值。底下利用 set 指令設定 x 變數的值,並用 puts 指令輸出 x 的內容到 Console:set x 5puts stdout $x如上列最後一行程式碼,取出變數值時需在變數名稱前加上 $ 符號。 命令置換符號。TCL 將中括號中的內容視為一個指令,會執行其中的指令並將結果傳回。例如 Demo1.tcl L5:puts "$x + $y = expr $x + $y"在做完 x 與 y 兩個變數的置換後,TCL 解譯器遇到中括號認為其中為另一個可執行的指令,指令名稱為 expr。在執行 expr 指令前,TCL 先將 x 與 y 值置換後,傳遞給 expr 指令並呼叫執行之。expr 指令用來做數學式子的運算,會負責剖析參數並做數學運算。群組 (grouping symbols)“” 雙引號可將多個元素組成單一一個參數,引號內的內容會被 TCL 進行置換處理,包括變數置換與命令置換。 大括號的功能與雙引號相同,但 TCL 不會對括號中的內容做任何解釋或處理,會照將括號中的內容視為一個參數,照本宣科原原本本地傳遞給指令去處理。例如 Demo1.tcl L6:puts $x + $y = expr $x + $y因為 TCL 對大括號中的內容不做任何處理,因此它的輸出為 $x + $y = expr $x + $y。另外,TCL 不會將大括號中的換行符號視為一個指令的結束,如果一個指令的參數很長時,我們就可以利用大括號這樣寫,把換行符號當成是參數的一部份:puts $x + $y =expr $x + $y 第 7 頁,共 36 頁其它 和 C base 語言一樣,反斜線可將特殊的字元做跳脫處理。例如 n 代表換行符號。在 TCL 語言裏,如果一個指令超過一行,亦可在行尾使用反斜線做為續行的符號 (VB 指令如果超過一行,則是在行尾用底線符號代表續行)。分號與換行號 代表一個 TCL 指令的結束符號。# 註解符號。通常我們會在一行程式碼的第一個字元打上 # 符號,以代表本行程式為註解。注意!如果在 # 符號前有 TCL 指令,必須像這樣做:puts hello ;# here is comment亦即,在 # 符號前加上一個分號代表前面指令的結束。如果不這麼做,那 TCL 便會把 # 視為一個參數丟給 puts 指令去做處理。變數TCL 變數的可以隨時建立不用事先宣告,變數名稱的取法也沒有任何限制,所以可以使用任何字元來為變數命名,甚至變數名跟指令名稱相同也沒問題。使用時只有一點要注意的,就是 TCL 是大小寫有別的語言。通常,我們以 set 指令來設定變數值:set x 5set y 6set PI 3.14set PI*2 6.28 ;# 注意!變數名稱是 PI*2puts $PI*2set PITCL 的 set 指令除了設定變數值的用途外,也可以用來取出變數的內容,如上列程式最後一行使用 set 指令取出 PI 的值 (注意!這邊不用在變數名稱前加上 $ 符號 )。unset 指令用來刪除一個或多個變數,來釋放記憶體空間:unset x y PI第 8 頁,共 36 頁我們可以使用 info exists 指令來檢查變數是否存在。例如 incr 指令使用時,變數必須先建立才能為變數進行加法運算。此時便可使用 info exists 先檢驗變數的存在:if !info exists counter set counter 0 else incr counter ;# counter 加 1TCL 在執行時會建立一些全域變數,可以利用 info global 列出有哪些全域變數:% info globalargv argv0 tcl_version tcl_interactive var auto_oldpath errorCode auto_path errorInfo unknown_handlers unknown_handler_order auto_index env tcl_patchLevel argc tcl_libPath _ tcl_platform tcl_library其中幾個比較常用的,像是 argc 存放程式的命令列參數個數,argv0 是目前執行的 TCL Script 名稱,argv 則是存放所有命令列參數的 list;env 陣列存放系統的環境變數,而 tcl_version 會告訴你目前的 TCL 版本為何。置換與群組處理 (Substitution and Grouping)底下是 TCL 置換處理與群組的幾點規則整理: TCL 指令的參數是以空白字元分隔,可以使用雙引號或大括號將多個元素組成一個參數。 如果是以大括號組出一個參數,TCL 不會對括住的內容進行任何置換,在對應的結束大括號出現前,任何字元都將視為參數的一部份,包含換行符號、分號或是內部巢狀的大括號。 如果是以雙引號組出一個參數,則在對應的結束雙引號出現前,雙引號中的內容會被 TCL 進行置換動作。 如果參數或是雙引號內的單字是以變數符號 $ 為開頭,則 TCL 為會進行變數的置換。 如果參數或是雙引號中有中括號,則在對應的中括號出現前,TCL 會對中第 9 頁,共 36 頁括號中的內容進行指令的置換。 因為 TCL 是以空白字元作為參數分隔符號,因此要避免下列的錯誤:if $x > 1puts $x 在此加上一個空白字元,隔開 if 指令的第二及第三個參數。TCL 的數學運算子- ! 減號(Unary minus) / NOT 位元運算(Bit-wise not) / NOT布林邏輯運算(Log

注意事项

本文(tcl基本语法与指令)为本站会员(第***)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.