Точка с запятой на той же линии приводит к пустому телу if
для
или while
оператор
Этот дефект происходит когда точка с запятой на той же линии как последняя лексема if
для
или while
оператор приводит к пустому телу.
Средство проверки делает исключение для случая где if
оператор сразу сопровождается else
оператор:
if(condition); else { ... }
Точка с запятой после, если, для или в то время как оператор часто указывает на программную ошибку. Побочная точка с запятой изменяет поток выполнения и приводит к непреднамеренным результатам.
Если вы хотите пустое тело для if
для
или while
оператор, перенесите точку с запятой в блок и поместите блок в новую строку, чтобы явным образом указать на ваше намерение:
if(condition) {;}
Группа: Хорошая практика |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки:
SEMICOLON_CTRL_STMT_SAME_LINE |
Удар: низко |
Find defects (-checkers)
| Incorrectly indented statement
| Macro terminated with a semicolon
| Macro with multiple statements