csapp2e 家庭作业 3.58

时间:2022-02-06 21:53:52
      1 typedef enum {MODE_A,MODE_B,MODE_C,MODE_D,MODE_E} mode_t;
      2
      3 int switch3(int *p1,int *p2,mode_t action)
      4 {
      5     int result = 0;
      6     switch(action)
      7     {
      8         case MODE_A:
      9             *p1 = *p2;
     10             result = *p1;
     11             break;
     12         case MODE_B:
     13             *p2 += *p1;
     14             result = *p1 + *p2;
     15             break;
     16         case MODE_C:
     17             *p2 = 15;
     18             result = *p1;
     19             break;
     20         case MODE_D:
     21             *p2 = *p1;
     22             result = 17;
     23             break;
     24         case MODE_E:
     25             result = 17;
     26             break;
     27         default:
     28             result = -1;
     29             break;
     30     }
     31     return result;
     32 }