Objective-C巢狀switch語句

2019-10-16 23:15:18

可以將switch作為外部switch語句序列的一部分。 即使內部和外部switchcase常數包含公共值,也不會產生衝突。

語法

巢狀switch語句的語法如下 -

switch(ch1) {
   case 'A': 
      printf("This A is part of outer switch" );

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

範例程式碼

#import <Foundation/Foundation.h>

int main () {

   /* 區域性變數定義 */
   int a = 100;
   int b = 200;

   switch(a) {
      case 100: 
         NSLog(@"This is part of outer switch\n", a );
         switch(b) {
            case 200:
               NSLog(@"This is part of inner switch\n", a );
         }
   }
   NSLog(@"Exact value of a is : %d\n", a );
   NSLog(@"Exact value of b is : %d\n", b );

   return 0;
}

執行上面範例程式碼,得到以下結果:

2018-11-15 00:55:06.093 main[167622] This is part of outer switch
2018-11-15 00:55:06.095 main[167622] This is part of inner switch
2018-11-15 00:55:06.095 main[167622] Exact value of a is : 100
2018-11-15 00:55:06.095 main[167622] Exact value of b is : 200