TCL学习笔记(持续更新)
2024-01-07 17:22:13
前言:
TCL(tool common language)是一种通用工具语言,很多eda tool都支持tcl,学习了解一些tcl基本语法还是很有必要的。
1:基础概念
? ? ?解释器: #!/usr/bin/tclsh
? ? ?打印: puts -> puts "hello ,world"
? ? ?注释: 单行注释用 # ,多行可以用: if 0 {xxx}
? ? ?语法结构:commandName argument1 argument2 ... argumentN
? ? ?数据类型:只支持string类型
? ? ?变量类型:支持变量和数组,都不用提前申明,直接使用
TCL解释器对一个命令的求值分为了:分析和执行
分析:把命令分解为独立的单词,进行必要的置换动作。
执行:把第一个单词当做命令,查看这个命令是否有定义,有的话激活其对应的内部动作。
2: 基本语法操作?
2.1 替换
-
命令替换:下面是一个简单的例子,功能是相加:
#!/usr/bin/tclsh puts [expr 1 + 6 + 9] //输出结果为:16
当TCL解释器遇到字符 [?,它就会把随后expr作为一个命令名,从而激活expr对应的动作,如果我们去掉[],TCL会报错,正常情况下只把命令行中的第一个单词作为命令,注意[]中必须是一个合法的TCL脚本,长度不限。[]中的脚本的值为最后一个命令的返回值。
-
变量替换:在变量名之前加上$,功能是返回该变量的内容。
#!/usr/bin/tclsh set a 3 puts $a
- 反斜杠替换:很多其他脚本语言中也有,其实就是 转义
#!/usr/bin/tclsh set a 3 puts "\$a=$a" //结果:$a=3
2.2 条件控制
? ? ? ? ? ? ? 1. if??
if {boolean_expression} {
# statement(s) will execute if the boolean expression is true
} else {
# other statement(s)
}
也可以嵌套:
if {boolean_expression 1} {
# Executes when the boolean expression 1 is true
} elseif {boolean_expression 2} {
# Executes when the boolean expression 2 is true
} elseif {boolean_expression 3} {
# Executes when the boolean expression 3 is true
} else {
# executes when the none of the above condition is true
}
需要注意的是:else/elseif必须要和if的后面一个}在同一行。
? ? ? ? ? ? 2. switch
switch switchingString {
matchString1 {
body1
}
matchString2 {
body2
}
...
matchStringn {
bodyn
}
}
2.3 循环
文章来源:https://blog.csdn.net/dajiao_zi/article/details/135390100
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!