51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1007|回复: 3
打印 上一主题 下一主题

tcl的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-4-3 13:14:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题1:在tcl中  
   split string ?splitChars?
把字符串string按分隔符splitChars分成一个个单词,返回由这些单词组成的串。如果splitChars
是一个空字符{},string被按字符分开。如果splitChars没有给出,以空格为分隔符。

很明显,后面只能带一个参数,?splitChars?
那么现在针对这句话,我不知道如何理解,set lst_files [ split $str_files  {,} ] 因为其在后面是{,};
当然这个语句是对的,是公司产品的代码。

问题2:在tcl中
file的意思:进行文件名操作,用来操作文件或获取文件信息
join的意思:join命令是命令的逆。这个命令把list的所有元素合并到一个字符串中,中间以joinString分开。

但是看下面的语句,根据上面的说法,把file和join组合来看,好象总感觉不正确
source [ file join $scriptDir tools.tcl ]    (这是公司产品代码,也是正确的)

又想:
file 后面可以跟很多命令,所以我觉得file 和join应该是一个特殊命令,但是我没有查到,有没有人知道file join的作用,或者说我按这样子理解对不对?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2006-4-4 19:38:41 | 只看该作者

我自己回答

问题1:在set lst_files [ split $str_files  {,} ] ,字符串就被这样子分开,如:word1{,}word2{,}word3

问题2:source [ file join $scriptDir tools.tcl ];file join是把tools.tcl 添加到$scriptDir中($scriptDir,目录名)
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2006-4-5 10:43:33 | 只看该作者
join是进行字符串组合。
join $scriptDir tools.tcl 是把tools.tcl添加到$scriptDir 所代表的路径后面。

这类问题可以在script.net这类脚本编辑和调试工具上自己编例子,试出来,这样能提高自己分析能力.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2006-4-26 15:50:10 | 只看该作者

再问一个tcl的问题

proc main { MyFile MyExtension} {
  global project
  
  # MyFile is redefined to managed the use of the character "."
  # which is not supported in SCADE -script command call
  
  set MyFile "${MyFile}.${MyExtension}"

  foreach item $project {
    set fileRef [Create $project "FileRef"]
    SetAtt $fileRef "persistAs" "$MyFile"
    SetRole $fileRef "owner" $project
    Call $item Save [get $item pathname]
  }

}
该函数大体功能  能够明白,但是具体每一条语句是如何实现的,代表什么意思,不太明白
像Create,SetAtt, SetRole 几个命令 是实现了什么功能?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-19 05:55 , Processed in 0.063718 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表