AUTOSAR C++14 Rule A6-5-2

Цикл for должен содержать один счетчик цикла, который не должен иметь типа с плавающей точкой.

Описание

Управляйте определением

Цикл for должен содержать один счетчик цикла, который не должен иметь типа с плавающей точкой.

Реализация Polyspace

Средство проверки отмечает эти ситуации:

  • for индекс цикла имеет тип с плавающей точкой.

  • Больше чем один счетчик цикла постепенно увеличивается в for оператор шага цикла.

    Например:

    for(i=0, j=0; i<10 && j < 10;i++, j++) {}

  • for оператор шага цикла отсутствует.

    Например:

    for(i=0; i<10;) {}

    Даже если вы постепенно увеличиваете счетчик цикла в теле цикла, средство проверки все еще повышает нарушение. Правило основано на правиле 6-5-1 MISRA® C ++. Согласно спецификациям C++ MISRA, счетчик цикла является тем, который инициализируется в или до выражения цикла, действует как операнд к оператору отношения в выражении цикла и изменяется в выражении цикла. Если инкрементный оператор в выражении цикла отсутствует, средство проверки не может найти модификацию счетчика цикла и рассматривает, как будто счетчик цикла не присутствует.

Поиск и устранение проблем

Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.

Проверяйте информацию

Группа: операторы

Введенный в R2019a