Tcl Switch 语句
一个 switch 语句允许对一个变量进行与一组值的等式测试。每个值都被称为一个 case,并且正在进行 switch 的变量会被检查每一个 switch case 。
语法
Tcl 语言中未引用的 switch 语句的语法如下:
switch switchingString matchString1 {body1} matchString2 {body2} ... matchStringn {bodyn}
在Tcl语言中,未加引号的 switch 语句的语法如下:
switch switchingString {
matchString1 {
body1
}
matchString2 {
body2
}
...
matchStringn {
bodyn
}
}
以下规则适用于 switch 语句 –
- switchingString 用于 switch 语句,通过与 matchString 进行比较,在不同的块之间进行切换。
-
在 switch 语句中可以有任意数量的 matchString 块。
-
switch 语句可以有一个可选的 default 块,必须出现在 switch 的结尾处。当没有任何一个 case 为 true 时,可以用 default 执行任务。
流程图
示例:未加引号版本
#!/usr/bin/tclsh
set grade C;
switch grade A { puts "Well done!" } B { puts "Excellent!" } C { puts "You passed!" } F { puts "Better try again" } default { puts "Invalid grade" }
puts "Your grade isgrade"
当上述代码被编译和执行时,会产生以下结果−
You passed!
Your grade is C
示例:引用版本
#!/usr/bin/tclsh
set grade B;
switch grade {
A {
puts "Well done!"
}
B {
puts "Excellent!"
}
C {
puts "You passed!"
}
F {
puts "Better try again"
}
default {
puts "Invalid grade"
}
}
puts "Your grade isgrade"
当以上代码被编译并执行时,将产生以下结果−
Excellent!
Your grade is B