TCL 巢狀switch語句


有可能有一個switch作為外開關的語句序列的一部分。即使在內外switch case 的常數包含共同的值,如果沒有衝突將出現。

語法

巢狀switch語句的語法如下:

switch switchingString {
   matchString1 {
      body1
      switch switchingString {
        matchString1 {
           body1
         }
         matchString2 {
           body2
         }
        ...
         matchStringn {
           bodyn
         }
      }
   }
   matchString2 {
      body2
   }
...
   matchStringn {
      bodyn
   }
}

範例

#!/usr/bin/tclsh

set a 100
set b 200

switch $a {
   100 {
     puts "This is part of outer switch"
     switch $b {
        200 {
           puts "This is part of inner switch!"
        }
	 }
   }   
}
puts "Exact value of a is : $a"
puts "Exact value of a is : $b"

當上述程式碼被編譯和執行時,它產生了以下結果:

This is part of outer switch
This is part of inner switch!
Exact value of a is : 100
Exact value of a is : 200