Labeled statements

There are three kinds of labels: identifier, case, and default.

Read syntax diagramSkip visual syntax diagramLabeled statement syntax

The label consists of the identifier and the colon (:) character.

C A label name must be unique within the function in which it appears.

C++ In C++, an identifier label may only be used as the target of a goto statement. A goto statement can use a label before its definition. Identifier labels have their own namespace; you do not have to worry about identifier labels conflicting with other identifiers. However, you may not redeclare a label within a function.

Case and default label statements only appear in switch statements. These labels are accessible only within the closest enclosing switch statement.

Read syntax diagramSkip visual syntax diagramcase statement syntax

Read syntax diagramSkip visual syntax diagramdefault statement syntax

The following are examples of labels:

 comment_complete : ;            /* null statement label */
 test_for_null : if (NULL == pointer)

Related information