D 编程——嵌套 switch 语句



switch 可能存在于外部 switch 语句的语句序列中。即使内部和外部 switch 的 case 常量包含相同的值,也不会发生任何冲突。

语法

嵌套 switch 语句的语法如下 −

switch(ch1) { 
   case 'A':  
      writefln("This A is part of outer switch" ); 
      switch(ch2) { 
         case 'A': 
            writefln("This A is part of inner switch" ); 
            break; 
         case 'B': /* case code */ 
      } 
      break; 
   case 'B': /* case code */ 
}

示例

import std.stdio;

int main () { 
   /* local variable definition */ 
   int a = 100; 
   int b = 200;  
   
   switch(a) {
      case 100: 
         writefln("This is part of outer switch", a ); 
         switch(b) { 
            case 200: 
               writefln("This is part of inner switch", a ); 
            default: 
               break; 
         } 
      default: 
      break; 
   } 
   writefln("Exact value of a is : %d", a ); 
   writefln("Exact value of b is : %d", b ); 
  
   return 0; 
}

当编译并执行上述代码时,会产生以下结果 −

This is part of outer switch 
This is part of inner switch 
Exact value of a is : 100 
Exact value of b is : 200 
d_programming_decisions.htm
广告