Do not use a semicolon on the same line as an if
, for
, or while
statement because this typically indicates programmer error and can result in unexpected behavior.
Noncompliant Code Example
In this noncompliant code example, a semicolon is used on the same line as an if
statement.
if (a == b); { /* ... */ }
The statements in the apparent body of the if
condition are always evaluated irrespective of the result of the condition expression.
Compliant Solution
This compliant solution eliminates the semicolon and ensures that the body of the if
construct is executed only when the condition expression is true.
if (a == b) { /* ... */ }
Applicability
Placing a semicolon on the same line as an if
, for
, or while
statement may result in unexpected behavior.
Related Guidelines
"Likely Incorrect Expression [KOA]" |
Bibliography
Section 2.7.2, "Errors of omission and addition" |