6.8.2 带标签语句
语法
形式化语法
bnf
label:
attribute-specifier-sequenceopt identifier :
attribute-specifier-sequenceopt case constant-expression :
attribute-specifier-sequenceopt default :
labeled-statement:
label statement1
2
3
4
5
6
7
2
3
4
5
6
7
约束
case标签和default标签只能出现在switch语句中。与这两类标签有关的进一步约束,见switch语句。- 标签名在同一函数内必须唯一。
语义
- 复合语句中的任意语句或声明,都可以前置一个前缀,把某个标识符声明为标签名。
- 可选的属性说明符序列归属于该标签。
- 标签本身不改变控制流;控制流会直接越过标签继续执行。