V3113. Consider inspecting the loop expression. It is possible that different variables are used inside initializer and iterator.

Анализатор обнаружил, что в разделе итератора (iterator section) оператора 'for' производится инкремент или декремент переменной, не являющейся счетчиком.

Рассмотрим пример. Допустим, у нас имеется выражение следующего вида:

for (int i = 0; i != N; ++N)

Вероятно, данный фрагмент кода содержит ошибку и вместо переменной 'N' в выражении инкремента '++N' необходимо использовать переменную 'i'. Корректный вариант кода должен выглядеть так:

for (int i = 0; i != N; ++i)

Рассмотрим следующий пример:

for (int i = N; i >= 0; --N)

Данный фрагмент кода также ошибочен. В выражении декремента '--N' должна быть использована переменная 'i':

for (int i = N; i >= 0; --i)

Данная диагностика классифицируется как:


Найденные ошибки

Проверено проектов
412
Собрано ошибок
14 132

А ты совершаешь ошибки в коде?

Проверь с помощью
PVS-Studio

Статический анализ
кода для C, C++, C#
и Java

goto PVS-Studio;
Этот сайт использует куки и другие технологии, чтобы предоставить вам более персонализированный опыт. Продолжая просмотр страниц нашего веб-сайта, вы принимаете условия использования этих файлов. Если вы не хотите, чтобы ваши данные обрабатывались, пожалуйста, покиньте данный сайт. Подробнее →
Принять