Tcl -决策

决策结构要求程序员指定程序要评估或测试的一个或多个条件,以及在条件被确定为真时要执行的语句,以及可选的其他语句如果条件被确定为假.

以下是在大多数编程语言中找到的典型决策结构的一般形式 :

决策制定

Tcl语言在内部使用expr命令,因此我们不需要使用expr语句显式.

Tcl语言提供以下类型的决策制定语句 :

Sr.No.Statement&说明
1if语句

'if'语句由一个布尔表达式后跟一个或多个语句组成.

2if ... else语句

'if'语句后面跟一个可选的'else'语句,该语句在布尔表达式时执行是假的.

3嵌套if语句

您可以在另一个内部使用一个'if'或'else if'语句if'或'else if'statement(s).

4

switch语句

A 开关声明允许变量针对值列表进行相等性测试.

5嵌套 switch语句

您可以使用一个在另一个开关语句中切换语句.

? :运算符

我们已经涵盖了条件运算符? :在前一章中,可用于替换 if ... else 语句.它具有以下一般形式 :

Exp1? Exp2:Exp3;

其中Exp1,Exp2和Exp3是表达式.注意冒号的使用和放置.

a'的值?表达式'是这样确定的:评估Exp1.如果是,那么Exp2会被评估并成为整个'?的值?如果Exp1为false,则计算Exp3,其值变为表达式的值.示例如下所示.

#!/usr/bin/tclsh

set a 10;
set b [expr $a == 1 ? 20: 30]
puts "Value of b is $b\n"
set b [expr $a == 10 ? 20: 30]
puts "Value of b is $b\n"

编译并执行上述程序时,它会产生以下结果 :

 b的值是30 
 b的值是20