Операция равенства в операторе о присвоении
Этот дефект возникает, когда вы используете оператор равенства вместо оператора назначения в простом операторе.
Использование == оператор вместо = оператор может бесшумно выдавать неправильные результаты. Если требуется присвоить значение переменной, присвоение не выполняется. Переменная сохраняет свое предыдущее значение или, если не инициализирована ранее, остается неинициализированной.
Используйте = (назначение) оператора вместо == (равный) оператор.
Проверка появляется на операторах присвоения и равенства цепей, таких как:
compFlag = val1 == val2;
compFlag = (val1 == val2);
Если используется == оператор предназначен, добавить комментарии к вашему результату или коду, чтобы избежать другого обзора. Смотрите Адрес Результаты Polyspace через исправления ошибок или обоснования.
| Группа: Программирование |
| Язык: C | C++ |
| По умолчанию: On для рукописного кода, off для сгенерированного кода |
Синтаксис командной строки: BAD_EQUAL_EQUAL_USE |
| Влияние: Высокий |
| ИДЕНТИФИКАТОР CWE : 480, 482 |