Latest web development tutorials

C ++ Гото заявления

C ++ цикл C ++ цикл

Гото заявление позволяет контролировать безоговорочно помеченного оператора в пределах той же функции.

Примечание: В любом языке программирования, не рекомендует использование оператора GOTO.Потому что это делает его трудно отслеживать поток управления программы, что делает программу трудно понять и трудно изменить. Любая программа, которая использует Goto заявления можно переписать в виде формулировка не требует использование оператора GOTO.

грамматика

Гото заявление в синтаксисе C ++:

goto label;
..
.
label: statement;

Здесь метка распознается идентификатор помеченный оператор может быть ничем иным , чем ключевые слова C ++ в виде простого текста.Помеченный оператор может быть какое-либо заявление, помещенный в идентификатор и двоеточие (:) позади.

технологическая схема

C ++ Гото заявления

примеров

#include <iostream>
using namespace std;
 
int main ()
{
   // 局部变量声明
   int a = 10;

   // do 循环执行
   LOOP:do
   {
       if( a == 15)
       {
          // 跳过迭代
          a = a + 1;
          goto LOOP;
       }
       cout << "a 的值:" << a << endl;
       a = a + 1;
   }while( a < 20 );
 
   return 0;
}

Когда приведенный выше код компилируется и выполняется, он дает следующие результаты:

a 的值: 10
a 的值: 11
a 的值: 12
a 的值: 13
a 的值: 14
a 的值: 16
a 的值: 17
a 的值: 18
a 的值: 19

Гото заявление является хорошим роль для выхода из глубоко вложенной рутины. Например, рассмотрим следующий фрагмент кода:

for(...) {
   for(...) {
      while(...) {
         if(...) goto stop;
         .
         .
         .
      }
   }
}
stop:
cout << "Error in program.\n";

УстранениеГото приведет к некоторые дополнительные тесты выполняются.Простой операторперерыв здесь не играет роли, поскольку она заставляет программу выхода из внутреннего цикла.

C ++ цикл C ++ цикл