ECMA-334 C# Language Specification15: Statements |
C# provides a variety of statements.
labeled-statement declaration-statement embedded-statement block empty-statement expression-statement selection-statement iteration-statement jump-statement try-statement checked-statement unchecked-statement lock-statement using-statementThe embedded-statement nonterminal is used for statements that appear within other statements. The use of embedded-statement rather than statement excludes the use of declaration statements and labeled statements in these contexts.
results in a compile-time error because an if statement requires an
void F(bool b) {
if (b)
int i = 44;
}
embedded-statement rather than a statement for its if branch. If this code were permitted, then the variable i would be declared, but it could never be used. (Note, however, that by placing i's declaration in a block, the example is valid.) end example]
In This Section: