Tcl条件语句
If {条件表达式1}
{
执行语句1
} elseif {条件表达式2}
{
执行语句2
} elseif {条件表达式3}
{
执行语句3
} else
{
执行语句4
}
注:elseif
{条件表达式}为可选
示例:
错误格式:
if
{$x<0}
{
set
x 0
}
正确格式:
if {$x<0} {set x 0}
(不推荐)
if
{$x<0} {
set x
0
}
脚本:
set x
2
set y
3
if
{$x<$y} {
puts
"x is less than y"
}
运行结果:

switch 匹配模式(可选) 字符串 模式1 对应的tcl脚本1 模式2(可选)对应的tcl脚本2 ...
default对应的tcl脚本
匹配模式:1、-exact 精确匹配模式(默认模式)
2、-glob 字符串匹配模式
3、-regexp 正则表达式匹配模式
switch匹配模式(可选) 字符串 {
模式1 对应的tcl脚本1
模式2 对应的tcl脚本2
....
模式N 对应的tcl脚本N
default
对应的tcl脚本
}
脚本示例1:
set x
7
set y
7
switch $x
\
$y {puts
"X=Y"} \
{[0-9]} {puts
"<10"} \
default {puts
">10"}
运行结果:

脚本示例2:
set x
7
switch -glob
$x {
"1"
{puts "one"}
"2"
{puts "two"}
"3"
{puts "three"}
"$y"
{puts "X=Y"}
{[4-9]}
{puts "greater than 3"}
default
{puts "Not a value bettwen 1 and 9"}
}
执行结果:

示例脚本3:
puts "Who
recorded 'Mr Tambourine Man'"
gets stdin
artist
switch
$artist {
{Bob
Dylan} -
{Judy
Collins} -
{Glen
Campbell} -
{The
Byrds} {
puts
"$artist recorded 'Mr Tambourine Man'"
}
default
{
puts
"$artist probably recorded 'Mr Tambourine Man'"
}
}
运行结果:

注:模式 -这样的形式表示这个模式和下一个模式执行相同的tcl语句
Tcl条件语句的更多相关文章
- Python —条件语句
条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非空(null ...
- php简写表达式,&& or || 缩写条件语句
有时候学的多了, 好多小细节 都忘了 ,比如 简单的表达式, 三元表达式 ?:; $aa or $bb 表达式 等等! 写一些简单的表达式,备忘! php用&&和||缩写条件语句 ...
- java中的条件语句(if、if...else、多重if、嵌套if)
Java条件语句之 if 生活中,我们经常需要先做判断,然后才决定是否要做某件事情.例如,如果考试成绩大于 90 分,则奖励一个 IPHONE 5S .对于这种"需要先判断条件,条件满足后才 ...
- javascript语句——条件语句、循环语句和跳转语句
× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文 ...
- go语言条件语句 if else
示例: if a < 5 { return 0 } else { return 1 } 关于条件语句,需要注意以下几点: 条件语句不需要使用括号将条件包含起来(): 无论语句体内有几条语 ...
- Todd's Matlab讲义第4讲:控制误差和条件语句
误差和残量 数值求解方程\(f(x)=0\)的根,有多种方法测算结果的近似程度.最直接的方法是计算误差.第\(n\)步迭代结果与真值\(x^\*\)的差即为第\(n\)步迭代的误差: \begin{e ...
- 5-python学习——条件语句
5-python学习——条件语句 5-python学习——条件语句 条件语句if else形式 if else条件语句说明 测试一下 编程语言一般都由这么几个部分组成 变量 条件分支语句 循环语句 函 ...
- Python基础6- 流程控制之if条件语句
Python条件语句是通过判断一条或多条条件语句的执行结果来决定执行哪条代码块的.Python 中if 语句用于控制程序的执行,基本形式为:if 判断条件: 执行语句……else: 执行语句…… #c ...
- Jade之条件语句
条件语句 jade支持js中的if/elseif/else语法. jade: - var user = { description: 'foo bar baz' } - var authorised ...
随机推荐
- Linux系统新手入门学习的四点建议
随着计算机的普及.互联网的发展,原本黑客手中的攻城利器---Linux,渐渐进入到普通群众的视线里,让越来越多的人接触到Linux,并学习Linux进而投身到Linux运维工作中去.如果大家对Linu ...
- VUE回顾基础3
1.方法 在vue模板里函数被定义为方法来使用,将函数放在methods对象里,作为一个属性,就可以在模板里使用它 this:在方法中this指向该方法所属的组件,可以使用this方文档data对象的 ...
- Ext下载文件
项目中前台用的是Ext JS,要从数据库中查询数据并导出为Excel表格 对此研究了下,代码如下: 前台代码: /** * 进行下载文件(form方式) */ _downloadDraft:funct ...
- 模仿jquery--offset方法。原生JS获取任意元素到文档document顶部的距离
1.通过遍历目标节点.目标节点的父节点,依次溯源. 然后累加这些节点到其最近可定位的祖先节点的距离.向上直到document. 其中,需要使用到节点的offsetTop/offsetLeft属性,来获 ...
- 足球foteball运动
foteball 英语词汇,中文翻译为一种体育项目:足球运动 中文名:运动用的足球 外文名:foteball 目录 释义 foteball 读音:英 [ˈfʊtbɔ:l] 美 [ˈfʊtˌbɔl] ...
- synchronized底层实现原理
基于进入和退出管程(Monitor)对象实现,无论显式(Monitorenter Monitorexit)还是隐式都是如此.同步方法并不是由monitorenter和monitorexit ...
- myEclipse项目部署点击Finish按钮没反应
-- 问题描述:myEclipse项目部署点击Finish按钮没反应. -- 问题原因:Tomcat没有不熟JDK. -- 解决办法:window->preferences->servic ...
- Maven nexus 安装nexus : wrapper | OpenSCManager failed - 拒绝访问。 (0x5)
在win7中安装nexus时提示:wrapper | OpenSCManager failed - 拒绝访问. (0x5) 主要是没有权限.需要以管理员的身份运行 如果你是直接点击 start-nex ...
- 腾讯微服务框架Tars的初体验
最近研究了一下腾讯的微服务体系开发框架. 官方的搭建过程:https://github.com/TarsCloud/Tars/blob/master/Install.zh.md 自己填的坑: 不得不说 ...
- UVA-439, Knight Moves(深度优先搜索)
#include<iostream> #include<queue> #include<cstring> #include<string> #inclu ...