break statement
Causes the enclosing for, while or do-while loop or switch statement to terminate.
Used when it is otherwise awkward to terminate the loop using the condition expression and conditional statements.
Syntax
break ;
|
Appears only within the statement of a loop body (while, do, for) or within the statement of a switch.
Explanation
After this statement the control is transferred to the statement or declaration immediately following the enclosing loop or switch, as if by goto.
Keywords
Notes
A break statement cannot be used to break out of multiple nested loops. The goto statement may be used for this purpose.
Example
#include <stdio.h>
int main(void)
{
int i = 2;
switch (i) {
case 1: printf("1");
case 2: printf("2"); // i==2, so execution starts at this case label
case 3: printf("3");
case 4:
case 5: printf("45");
break; // execution of subsequent cases is terminated
case 6: printf("6");
}
printf("\n");
// Compare outputs from these two nested for loops.
for (int j = 0; j < 2; j++)
for (int k = 0; k < 5; k++)
printf("%d%d ", j,k);
printf("\n");
for (int j = 0; j < 2; j++) {
for (int k = 0; k < 5; k++) { // only this loop is exited by break
if (k == 2) break;
printf("%d%d ", j,k);
}
}
}
Output:
2345
00 01 02 03 04 10 11 12 13 14
00 01 10 11
References
C11 standard (ISO/IEC 9899:2011):
- 6.8.6.3 The break statement (p: 153)
C99 standard (ISO/IEC 9899:1999):
- 6.8.6.3 The break statement (p: 138)
C89/C90 standard (ISO/IEC 9899:1990):
- 3.6.6.3 The break statement
See also
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/c/language/break