Ошибка генерации рисунка

Теперь я работаю над проектом, где мне нужно break в моей инструкции switch, иначе код не будет работать. Потерпите меня, и я дам вам хороший пример того, почему вам нужно break в вашем заявлении о переключении.

Представьте, что у вас есть три состояния, которые ждут пользователя, чтобы ввести число, второе для вычисления, а третье - для печати суммы.

В этом случае у вас есть:

  1. Состояние1 - Подождите, пока пользователь введет число
  2. Состояние2 - Распечатайте сумму
  3. state3 - Вычислить сумму

. Если посмотреть на состояния, вы хотите, чтобы порядок возбуждения начинался с состояния 1, затем состояние 3 и, наконец, состояние2. В противном случае мы будем печатать только пользовательские данные без вычисления суммы. Чтобы еще раз прояснить это, мы ожидаем, что пользователь введет значение, затем вычислит сумму и распечатает сумму.

Вот пример кода:

while(1){
    switch(state){
      case state1:
        // Wait for user input code
        state = state3; // Jump to state3
        break;
      case state2:
        //Print the sum code
        state = state3; // Jump to state3;
      case state3:
        // Calculate the sum code
        state = wait; // Jump to state1
        break;
    }
}

Если мы не используем break, он будет выполняться в этом порядке, state1, state2 и state3. Но используя break, мы избегаем этого сценария и можем упорядочить в правильной процедуре, которая должна начинаться с состояния1, а затем state3 и, наконец, не в состоянии state2.

0
задан yasar 14 June 2012 в 21:50
поделиться