Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

C перейти к заявлению

Выражение C goto

В этом руководстве вы научитесь создавать оператор goto в программировании на C. Кроме того, вы узнаете, когда использовать оператор goto, а когда нет.

goto оператор позволяет передать управление программой указанной метке .

<час>

Синтаксис инструкции goto

goto label;
... .. ...
... .. ...
label: 
statement;

Ярлык является идентификатором. Когда goto встречается оператор, управление программой переходит к label: и начинает выполнение кода.

<рисунок> <час>

Пример:инструкция goto

// Program to calculate the sum and average of positive numbers
// If the user enters a negative number, the sum and average are displayed.

#include <stdio.h>

int main() {

   const int maxInput = 100;
   int i;
   double number, average, sum = 0.0;

   for (i = 1; i <= maxInput; ++i) {
      printf("%d. Enter a number: ", i);
      scanf("%lf", &number);
      
      // go to jump if the user enters a negative number
      if (number < 0.0) {
         goto jump;
      }
      sum += number;
   }

jump:
   average = sum / (i - 1);
   printf("Sum = %.2f\n", sum);
   printf("Average = %.2f", average);

   return 0;
}

Вывод

1. Enter a number: 3
2. Enter a number: 4.3
3. Enter a number: 9.3
4. Enter a number: -2.9
Sum = 16.60
Average = 5.53
<час>

Причины, по которым следует избегать перехода

Использование goto оператор может привести к коду, который содержит ошибки и труден для понимания. Например,

one:
for (i = 0; i < number; ++i)
{
    test += i;
    goto two;
}
two: 
if (test > 5) {
  goto three;
}
... .. ...

Кроме того, goto Оператор позволяет делать плохие вещи, например, выходить за пределы области видимости.

При этом goto может быть полезно иногда. Например:чтобы выйти из вложенных циклов.

<час>

Стоит ли использовать goto?

Если вы думаете, что использование goto оператор упрощает вашу программу, вы можете его использовать. При этом goto редко бывает полезен, и вы можете создать любую программу на C, не используя goto вообще.

Вот цитата Бьерна Страуструпа, создателя C++:"Тот факт, что 'goto' может делать что угодно, именно поэтому мы его не используем".


Язык C

  1. Beeper
  2. C# if, if...else, if...else if и вложенный оператор if
  3. Оператор переключения C#
  4. Оператор C# break
  5. C# оператор продолжения
  6. C++ если, если... еще и вложенный, если... еще
  7. Оператор передачи Python
  8. C — базовый синтаксис
  9. Питон — Числа
  10. Что такое номер детали?