Выражения по существу типа символов не должны использоваться ненадлежащим образом в операциях сложения и вычитания
Выражения по существу типа символов не должны использоваться ненадлежащим образом в операциях сложения и вычитания.
По существу, выражения типов символов char
переменные. Не используйте char
в арифметических операциях, потому что данные не представляют числовые значения.
Уместно использовать char
с операциями сложения и вычитания только в следующих случаях:
Когда один операнд операции сложения (+) является char
другой - это подписанный или неподписанный char
, short
, int
, long
или long long
. В этом случае операция возвращает char
.
Когда первый операнд операции вычитания (-) является char
а второй - это подписанный или неподписанный char
, short
, int
, long
или long long
. Если оба операнда char
операция возвращает стандартный тип. В противном случае операция возвращает char
.
Вышеуказанное использование позволяет манипуляции символьные данные, такие как преобразование между строчными и заглавными символами или преобразование между цифрами и их порядковыми значениями.
Для получения дополнительной информации о важных типах смотрите MISRA C:2012 Rule 10.1
.
The operand_name
операнд +
оператор, применяемый к выражению по существу символа типа, должен иметь по существу подписанный или неподписанный тип.
Правый операнд -
оператор, применяемый к выражению по существу символьного типа, должен иметь по существу подписанный, беззнаковый или символьный тип.
Левый операнд -
оператор должен иметь по существу тип символов, если правый операнд имеет по существу тип символов.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
Группа: Модель Essential Type |
Категория: Требуемая |
Категория СМЖЛ: Консультационная |