Оператор break (C++)
Оператор break заканчивает выполнение ближайшего заключающего цикла или условной инструкции, в которой она отображается. Управление передается оператору, который расположен после оператора, при его наличии.
Синтаксис
break;
Замечания
Оператор break используется с оператором условного коммутатора и с помощью инструкций do, for, и в то время как операторы цикла.
switch В инструкции инструкция приводит к тому, break что программа выполняет следующую инструкцию за пределами инструкции switch . break Без инструкции выполняется каждая инструкция из соответствующей case метки до конца switch инструкции, включая default предложение.
В циклах break оператор завершает выполнение ближайшего заключенного do for оператора или while оператора. Управление передается оператору, который расположен после завершенного оператора, при его наличии.
В вложенных инструкциях break оператор заканчивается только оператором , for switch или while оператором do , который немедленно заключает его. Вы можете использовать инструкцию return или goto инструкцию для передачи управления из более глубоко вложенных структур.
Пример
В следующем коде показано, как использовать инструкцию break в цикле for .
#include using namespace std; int main() < // An example of a standard for loop for (int i = 1; i < 10; i++) < if (i == 4) < break; >cout // An example of a range-based for loop int nums []; for (int i : nums) < if (i == 4) < break; >cout >
In each case: 1 2 3
В следующем коде показано, как использовать break цикл while и do цикл.
#include using namespace std; int main() < int i = 0; while (i < 10) < if (i == 4) < break; >cout i = 0; do < if (i == 4) < break; >cout while (i
In each case: 0123
В следующем коде показано, как использовать break в инструкции switch. В каждом случае необходимо использовать break , если вы хотите обрабатывать каждый случай отдельно. Если вы не используете break , выполнение кода переходит к следующему варианту.
#include using namespace std; enum Suit< Diamonds, Hearts, Clubs, Spades >; int main() < Suit hand; . . . // Assume that some enum value is set for hand // In this example, each case is handled separately switch (hand) < case Diamonds: cout // In this example, Diamonds and Hearts are handled one way, and // Clubs, Spades, and the default value are handled another way switch (hand) < case Diamonds: case Hearts: cout >
Что такое break в C++?
Оператор break используется в циклах для досрочного выхода из цикла.
Пример:
while(true)
В примере выше, цикл должен был работать бесконечно, но благодаря тому, что в нем сразу идет оператор break, то происходит выход из цикла и вся программа работает корректно.
В отличии от continue, который пропускает лишь одну итерацию цикла, оператор break полностью выходить из цикла.
Выход при достижения нужной итерации:
int some = 0; while(some
Таким образом цикл закончиться после пяти и дальше работать не будет.
BREAK
Оператор break имеет два назначения. Первое — это окончание работы оператора switch. Второе — это принудительное окончание цикла, минуя стандартную проверку условия. Данное назначение здесь и рассматривается. Когда оператор break встречается в теле цикла, цикл немедленно заканчивается и выполнение программы переходит на строку, следующую за циклом. Например:
Данная программа выводит числа от 0 до 10 включительно и заканчивает работу, поскольку break вызывает немедленный выход из цикла, минуя условие t< 100.
Оператор break, как правило, используется в циклах, где особые условия могут вызвать немедленное завершение работы. Ниже приведен пример того, как нажатие на клавишу может остановить выполнение функции look_up():
int look_up(char *name)
char tname[40];
int loc;
loc = -1;
do
loc = read_next_name(tname);
if(kbhit ()) break;
>
while(!strcmp(tname, name));
return loc;
>
Можно использовать функции такого типа для поиска имени в файле базы данных. Если файл слишком длинный и надоело ждать, то можно нажать на клавишу и выйти из функции до окончания работы. Функция kbhit() возвращает 0, если не было нажатия. В противоположном случае она возвращает ненулевое значение, break вызывает выход из самого внутреннего цикла. Например:
выводит числа от 1 до 10 включительно 100 раз. Каждый раз, когда встречается break, контроль передается внешнему циклу for.
break, используемый в операторе switch, влияет только на данный switch, но не на цикл, в котором может находиться switch.
Оператор break (C)
Оператор break завершает выполнение ближайшего внешнего оператора do , for , switch или while , в котором он находится. Управление передается оператору, который расположен после завершенного оператора.
Синтаксис
jump-statement :
break ;
Оператор break часто используется для завершения обработки блока case, относящегося к оператору switch . Если внешний оператор итерации или оператор switch отсутствует, создается ошибка.
Если используются вложенные операторы, то break завершает выполнение только того оператора do , for , switch или while , который непосредственно его окружает. Передать управление за пределы вложенной структуры можно при помощи оператора return или goto .
В следующем примере показано использование оператора break :
#include int main() < char c; for(;;) < printf_s( "\nPress any key, Q to quit: " ); // Convert to character value scanf_s("%c", &c); if (c == 'Q') break; >> // Loop exits only when 'Q' is pressed