Оператор break
Оператор break применяется в двух случаях.
Во-первых, в операторе switch с его помощью прерывается выполнение последовательности case (см. раздел "Оператор выбора — switch" ранее в этой главе). В этом случае оператор breakне передает управление за пределы блока.
Во-вторых, оператор breakиспользуется для немедленного прекращения выполнения цикла без проверки его условия, в этом случае оператор breakпередает управление оператору, следующему после оператора цикла.
Когда внутри цикла встречается оператор break, выполнение цикла безусловно (т.е. без проверки каких-либо условий.) прекращается и управление передается оператору, следующему за ним. Например, программа
#include <stdio.h> int main(void){ int t; for(t=0; t<100; t++) { printf("%d ", t); if(t==10) break; } return 0;}выводит на экран числа от 0 до 10. После этого выполнение цикла прекращается оператором break, условие t < 100 при этом игнорируется.
Оператор break часто используется в циклах, в которых некоторое событие должно вызвать немедленное прекращение выполнения цикла. В следующем примере нажатие клавиши прекращает выполнение функции look_up():
void look_up(char *name){ do { /* поиск имени 'name' */ if(kbhit()) break; } while(!found); /* process match */}Библиотечная функция kbhit() возвращает 0, если клавиша не нажата (то есть, буфер клавиатуры пуст), в противном случае она возвращает ненулевое значение. В стандарте С функция kbhit() не определена, однако практически она поставляется почти с каждым компилятором (возможно, под несколько другим именем).
Оператор break вызывает выход только из внутреннего цикла. Например, программа
for(t=0; t<100; ++t) { count = 1; for(;;) { printf("%d ", count); count++; if(count==10) break; }}100 раз выводит на экран числа от 1 до 9. Оператор break передает управление внешнему циклу for.
Дата добавления: 2015-04-25; просмотров: 820;