- 浏览: 221077 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
Wangwei86609:
非常好的规则引擎框架,支持决策树和多线程运行规则https:/ ...
规则引擎 -
hzxlb910:
真详细,收藏哈
maven setting.xml配置说明 -
东方胜:
[b][/b]
脚本语言 Tcl -
345161974:
hyw520110 写道345161974 写道这个Visua ...
Visual Tcl Binary 完整版(完美中文支持) -
hyw520110:
345161974 写道这个Visual Tcl Binary ...
Visual Tcl Binary 完整版(完美中文支持)
Tcl编程简介(一)
关键词: tcl
Tcl是一种很通用的脚本语言,它几乎在所有的平台上都可以解释运行,功能强大。是tool command language的缩写,发音为 "tickle”, 实际上包含了两个部分:一个语言和一个库。
首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一 些互交程序如文本编辑器、调试器和shell。它有一个简单的语法 和很强可扩充性,Tcl可以创建新的过程以增强其内建命令的能力。
其次,Tcl是一个库包,可以被嵌入应用程序,Tcl的库包含了一个分析器、用于执行内建命令的例程和可以使你扩充(定义新的 过程)的库函数。应用程序可以产生Tcl命令并执行,命令可以由用户产生,也可以从用户接口的一个输入中读取(按钮或菜单等)。 但Tcl库收到命令后将它分解并执行内建的命令,经常会产生递归的调用。
下面简单介绍以下txl的语法规则:
解释器
在Tcl的数据结构中的核心是Tcl_Interp.一个解释器包含了一套命令,一组变量和一些用于描述状态的东西。每一个 Tcl命令是 在特定的Tcl_Interp中运行的,基于Tcl的应用程序可以同时拥有几个Tcl_Interp。Tcl_Interp是一个轻量级的结构,可以快速的新建和删除。
数据类型
Tcl只支持一种数据结构:字符串(string)。所有的命令,命令的所有的参数,命令的结果,所有的变量都是字符串。请牢记这一点,所有的东西都是字符串。 这是它比较有特点的方面字符串有三种形式:命令(command), 表达式(expresion)和表(list)。
Basic Command Syntax 基本语法
Tcl有类似于shell和lisp的语法,当然也有许多的不同。一 条Tcl的命令串包含了一条或多条命令用换行符或分号来隔开,而每一条命令包含了一个域(field)的集合,域使用空白分开的,第一个域是一个命令的名字,其它的是作为参数来传给它。
例如:
set a 22 //相当于C中的 a=22 a是一个变量这条命令分为三个域:1: set 2: a 3: 22 set使用于设置变量的值的命令,a、20 作为参数来传给它,a使它要操作的变量名,22是要付给的a值。
Tcl的命令名可以是内置的命令也可以是用户建的新命令,如果是用户用户建的新命令应用程序中用函数Tcl_CreateCommand来创建。所有的参数作为字符串来传递,命令自己会按其所需来解释的参数的。命令的名字必须被打全,但 Tcl解释器找不到一同名的命令时会用 unknown命令来代替。
在很多场合下,unknown 会在库目录中搜寻,找到一个的话,会自动生成一个Tcl命令并调用它。unknown经常完成缩略的命令名的执行。但最好不要使用。
注释
和shell很象,第一个字母是"#"的Tcl字符串是注释。
其他细节规则
Grouping arguments with double-quotes 用双引号来集群参数,目的在于使用有空白的参数。
例如:
|
如够一个参数一双引号来开始,该参数会一直到下一个双引号才结束。其中可以有换行符和分号。
Variable substitution with $ 用美元符进行变量替换说白了就是引用该变量。
如:
|
Command substitution with brackets 命令子替换(用方括号)
例如:
|
实现执行 set b "hello" 并用其结果来替换源命令 中的方括号部分,产生一条新命令
set a "hello" //"hello" 为 set b "hello" 的返回值
最终的结果是b="hello" a="hello"
当命令的一个子域以方括号开始以方括号结束,表示要进行一个命令子替换。并执行该子命令,用其结果来替换原命令中的方括号部分。方括号中的部分都被视为Tcl命令。
如下一个复杂一点的例子:
|
Backslash substitution 转移符替换
转移符时间不可打印字符或由它数意义的字符插入进来。这一概念与C语言中的一样。
|
Grouping arguments with braces 用花扩括号来集群参数
用花扩括号来集群参数与用双引号来集群参数的区别在于:用花扩括号来集群参数其中的三种上述的子替换不被执行。而且可以嵌套。
例如:
|
命令综述
1.一个命令就是一个字符串(string)。
2.命令是用换行符或分号来分隔的。
3.一个命令由许多的域组成。第一个于是命令名,其它的域作为参数来传递。
4.域通常是有空白(Tab横向制表健 Space空格)来分开的。
5.双引号可以使一个参数包括换行符或分号。三种子替换仍然发生。
6.花括号类似于双引号,只是不进行三总体换。
7.系统只进行一层子替换,机制替换的结果不会再去做子替换。而且子替换可以在任何一个域进行。
8.如果第一个非控字符是`#", 这一行的所有东西都是注释。
表达式
对字符串的一种解释是表达式。几个命令将其参数按表达式处理,如:expr、for 和 if,并调用Tcl表达式处理器(Tcl_ExprLong, Tcl_ExprBoolean等)来处理它们。其中的运算符与C语言的很相似。
|
逻辑非
|
左移 右移 只能用于整数。
|
逻辑比较
|
位运算 和 异或 或
|
逻辑"和" "或"
|
If-then-else 与C的一样
Tcl 中的逻辑真为1,逻辑假为0。
一些例子:
|
计算字符串的长度 转化为浮点数来计算
|
都返回 1
|
都返回 3
发表评论
-
Tcl 基础知识精华20句
2011-03-30 09:47 1442最近在巩固Tcl的基础知 ... -
tcl 字符串操作 替换
2011-03-30 09:47 5691CL:字符串命令 有一个关于TCL的哲学探讨:TCL语法中的 ... -
Tcl/Tk--文件操作
2011-03-29 17:41 2815wikibook上的文章很有水平,特翻译出来,晒晒。(译自wi ... -
tcl中如何产生随机数
2011-03-25 14:27 2346[前言] 亂數產生器在NS2中是非常重要的, ... -
TCL 取时间、格式化时间
2011-03-25 14:03 3751clock seconds 取一个整型值 用命令可以格式化时 ... -
Visual Tcl Binary 完整版(完美中文支持)
2011-03-22 17:24 1938Visual Tcl Binary 是我为可视化开发工具 Vi ... -
windows tcl/tk安装(塔卡)
2011-03-22 17:15 3494在Windows中,最简单的方 ... -
ASED Tile for Linux/Windows 正式发布。
2011-03-22 16:42 1373ASED Tile 项目主页: http://co ... -
正式发布 Visual Tcl Binary 1.6.1 加强版
2011-03-22 16:41 1233Visual Tcl Binary 1.6.1 版 ... -
Tcl/Tk 开发者的常备编程工具
2011-03-22 16:38 2651工欲善其事,必先利其器”,选择正确的工具,可以让 Tcl/Tk ... -
Tcl/Tk 在 Windows XP 系统中的 pixmap 错误。
2011-03-22 16:36 981Tc/Tk,Ubuntu 7.04,中文缺字 在程序 ... -
Tcl/Tk Web Browser Plugin v3
2011-03-22 16:35 1068相信大家一定非常熟悉 Java Applet,许多网页的特效就 ... -
如何将 *.tcl *.tbc 文件转换为 Linux/Windows 二进制可执行文件。
2011-03-22 16:32 3219=============================== ... -
Visual Tcl Binary for Linux/Windows 完整版发布。
2011-03-22 16:27 1430Visual Tcl Binary 项目主页: http ... -
tcl 小技巧
2011-03-21 14:51 9351,expr 【expr arg ?arg ...?】可以有一 ... -
Tcl语言cmdline包
2011-03-21 14:51 1390Cmdline包主要用来处理命令行输入。 getopt ... -
Tcl语言包搜索机制
2011-03-21 14:51 1061“pkg_mkIndex”是一个Tcl命令,它用来建立包索引, ... -
Tcl语言自动加载机制
2011-03-21 14:49 1156“pkg_mkIndex”是一个Tcl ... -
tcl/tk/expect(转)
2011-03-21 14:49 969Tcl pronounced &quo ... -
Tcl编程简介(六)
2011-03-21 14:42 864lsort -mode list 排列列表。 -mode ...
相关推荐
【TCL编程简介】 TCL,全称Tool Command Language,是一种功能强大的通用脚本语言,其发音为“tickle”。TCL的特点在于它的简洁语法和高度可扩展性,使其不仅适用于发布命令给交互式程序,如文本编辑器、调试器和...
TCL编程初步(学习TCL语言)
标题与描述概述的知识点主要集中在TCL脚本的基础用法及编程方法上,以下是对这些知识点的详细解析: ### TCL脚本基础 #### 1. 基本语法与结构 TCL(Tool Command Language)是一种强大的脚本语言,特别适用于快速...
Tcl_TK编程权威指南是一本全面介绍Tcl(Tool Command Language)及Tk图形用户界面工具包的编程书籍,由John Ousterhout教授设计并编写。Tcl是一种脚本语言,可以被轻松地嵌入到应用程序中,与C语言相比,Tcl的语法...
TCL(Tool Command Language)是一种解释型的、动态类型的脚本语言,由John Ousterhout在1988年创建。它最初被设计用于快速原型开发和测试,但随着时间的发展,TCL已经广泛应用于系统管理、网络设备配置、GUI(图形...
#### 一、TCL/Tk简介 TCL(Tool Command Language)是一种解释型的脚本语言,以其简洁、高效的特点受到开发者的喜爱。Tk则是与TCL紧密相连的一个图形用户界面工具包,主要用于创建跨平台的GUI应用。TCL/Tk由John K....
这些基础知识构成了TCL编程的基石,无论你是初学者还是有一定经验的开发者,都能从中受益。 expect部分是本书的重点。通过expect,你可以编写脚本来模拟用户与命令行界面的交互,例如自动应答程序提示、等待特定...
TCL(Tool Command Language,工具命令语言)是一种强大的解释型脚本语言,广泛应用于系统管理、设备控制、软件开发和测试等领域。以下是对TCL脚本语言编程和TCL语言教程的一些关键知识点的详细说明: 1. **基本...
描述与标签中的重复提及“TCL脚本语言编程.pdf”,暗示了这份文档可能是关于TCL编程的详细介绍或教程,旨在帮助读者掌握TCL语言的基础知识、高级特性以及实际应用案例。由于文档的具体内容未能完全展示,我们可以...
### TCL编程核心知识点详解 #### 一、TCL概述与特点 TCL(最初被称为“工具命令语言”,即Tool Command Language)是由John Ousterhout创建的一种强大的脚本语言。随着时间的发展,虽然“工具命令语言”的含义已经...
《TCL / TK 权威编程指南》是Brent Welch所著的一本关于TCL/TK编程的权威书籍,由霍尔出版社出版。该书专为TCL/TK的开发者和爱好者设计,提供了全面深入的编程指导,适用于TCL 7.4和TK 4.0版本。尽管提供的是初稿...
**TCL脚本语言编程** TCL(Tool Command Language)是一种简单、易学且功能强大的脚本..."TCL脚本语言编程.pdf"这份资料应包含了TCL的详细教程,包括基础概念、语法特性、实例演示等,对学习和掌握TCL编程非常有帮助。
### TCL脚本语言编程知识点详解 #### 一、TCL基本知识 - **TCL简介**:TCL(Tool Command Language)是一种轻量级的解释型脚本语言,以其简单易学、...希望这份详尽的知识点能够帮助大家更好地理解和掌握TCL编程。
TCL(Tool Command Language)是一种脚本语言,广泛应用于快速原型开发、脚本编程等场景。TCL支持网络通信功能,其中最重要的一项是Socket编程,用于创建客户端-服务器应用程序。 #### 二、TCL Socket 基本概念 在...
### 面向对象的TCL编程——ITCL [incr TCL] #### 一、概述 在当前快速发展的软件市场中,开发周期短的应用程序往往更有可能取得成功。Tcl/Tk提供了一个高效的交互式开发环境,能够以惊人的速度构建图形用户界面...
2、编写一个TCL脚本,求一个整数列表的平均值。 3、编写一个TCL脚本,计算一个整数列表的最大值和最小值。 4、编写一个TCL脚本,将一个字符串反转。 5、编写一个TCL脚本,将一个整数列表按照升序排序。 ...
《TCL\TK编程权威指南》是一本深入探讨TCL和TK编程语言的经典教程,它以其详尽且易于理解的内容,深受程序员们的喜爱。TCL(Tool Command Language)是一种脚本语言,而TK则是一个与TCL紧密集成的图形用户界面(GUI...
Tcl/Tk是第一种能通过Windows、Macintosh和Solaris等主要平台处理企业级任务的脚本语言。本书共分为55章,依次详细讲述了 Tcl基础、Tcl高级特性、TK基础、TK组件、TK详解、C语言编程、各版本之间的差异等方面的知识...
这只是TCL编程基础知识的一个开端。随着你深入学习,会发现TCL还包含了过程定义、文件操作、错误处理、正则表达式匹配等多种功能。TCL的强大之处在于其简洁性和灵活性,使得编写脚本变得非常直观和高效。无论你是...