| C Statement Syntax |
| statement |
::= |
labeled-statement |
|
| compound-statement |
|
| expression-statement |
|
| selection-statement |
|
| iteration-statement |
|
| jump-statement |
|
| null-statement |
| labeled-statement |
::= |
identifier : statement |
|
| case
constant-expression : statement |
|
| default
:
statement |
| compound-statement |
::= |
{
declaration ∗ statement ∗ } |
| expression-statement |
::= |
expression ; |
| selection-statement |
::= |
if-statement | switch-statement |
| if-statement |
::= |
if ( expression
)
statement |
|
| if
( expression
) statement
else
statement |
| switch-statement |
::= |
switch
( expression
)
statement |
| iteration-statement |
::= |
while-statement | do-statement |
for-statement |
| while-statement |
::= |
while
( expression
)
statement |
| do-statement |
::= |
do
statement while ( expression ) ; |
| for-statement |
::= |
for ( ( expression |
ε )
; (
expression | ε ) ; ( expression | ε ) ) statement |
| jump-statement |
::= |
goto-statment | continue-statement |
break-statement | return-statement |
| goto-statement |
::= |
goto
identifier ; |
| continue-statement |
::= |
continue
; |
| break-statement |
::= |
break
; |
| return-statement |
::= |
return (
expression | ε ) ; |
| null-statement |
::= |
; |