blue1025的个人空间 https://blog.eetop.cn/mj8051 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Tcl编程简介(二)

热度 1已有 1608 次阅读| 2008-8-26 11:00 |个人分类:linux

http://blog.csdn.net/kangzuo/archive/2006/04/28/695358.aspx

列表


  字符串的另一种解释为列表。一个列表是类似于结果的一个字 符串包含了用空白分开的很多域。例如 "Al Sue Anne John" 是 一个有四个元素的例表,在列表中换行父被视为分隔符。例如:


  b c {d e {f g h}} 是一个有三个元素的列表 b 、c 和 {d e {f g h}}。


  Tcl的命令 concat, foreach, lappend, lindex, linsert,list, llength, lrange,lreplace, lsearch, 和 lsort 可以使你对列表操作。


正则表达式


  Tcl 提供了两个用于正则表达式的命令 regexp 和 regsub。 这里的正则表导师实际上是扩展的正则表达式,与 egrep 相一致。


  支持 ^ $ . + ? > < () | []


命令结果


  每一条命令有俩个结果:一个退出值和一个字符串。退出值标志着命令是否正确执行,字符串给出附加信息。有效的返回制定议在`tcl.h", 如下:


TCL_OK


  命令正确执行,字符串给出了命令的返回值。


TCL_ERROR


  表示有一个错误发生,字符串给出了错误的描述。全局变量 errorInfo 包含了人类可读的错误描述,全局变量errorCode 机器使用的错误信息。


TCL_RETURN


  表示 return 命令被调用,当前的命令(通常是一个函数)必须立刻返回,字符串包含了返回值。


TCL_BREAK


  表示break已经被调用,最近的巡环必须立刻返回并跳出。字符串应该是空的。


TCL_CONTINUE


  表示continue已经被调用,最近的巡环必须立刻返回不跳出。字符串应该是空的。


  Tcl编程者一般需要关心退出值。当Tcl解释器发现错误发生后会立刻停止执行。


Procedures 函数


  Tcl 允许你通过proc命令来扩充命令(定义新的命令),定义之后可以向其它的内建命令一样使用。


  例如:



proc pf {str} {
puts $str
}
pf "hello world"
这里有一个初学者不注意的地方,上述的定义一定要写成那样子。而不能向下面那样写:
proc pf {str}
{
puts $str
}




  因为proc实际上也只不过是一条命令,是一换行符或分号来结束的,用集群参数来传递函数体。proc的定义如下:



proc name args tclcommand
Variables: scalars and arrays



  变量:标量和向量(即数组)


  向量就是数组,而标量是没有下表的变量。


  我们用C来类比:



int i; // i 是标量
int j[10]; // j 是向量



  变量不需要定义,使用的时候会自动的被创建。Tcl支持两种


  变量:标量和向量


  举个例子来说明吧,



set i 100
set j(0) 10
set k(1,3) 20



  i是标量,j是向量。


  引用的时候:



$i
$j(0)
$k(1,3)


1

点赞

刚表态过的朋友 (1 人)

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 13

    粉丝
  • 16

    好友
  • 15

    获赞
  • 23

    评论
  • 2824

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-20 08:07 , Processed in 0.020312 second(s), 15 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部