Равнина char переменная в арифметической операции без явной сигнатуры
Этот дефект возникает, когда char переменные без явной ничтожности используются следующими способами:
Для хранения не -char константы.
В арифметической операции, когда char является:
Отрицательное значение.
Результат изменения знака переполнения.
Как смещение буфера.
char переменные без signed или unsigned квалификатор может быть подписан или не подписан в зависимости от компилятора.
Операции над простым символом могут привести к неожиданным числовым значениям. Если символ используется в качестве смещения, то он может вызвать переполнение буфера или неполный поток.
При инициализации переменной char во избежание путаницы, определяемой реализацией, явно укажите, является ли символ подписанным или неподписанным.
| Группа: Числовые |
| Язык: C | C++ |
| По умолчанию: Откл. |
Синтаксис командной строки: BAD_PLAIN_CHAR_USE |
| Воздействие: среднее |
| CWE ID: 682, 758 |