Стандартная Библиотечная функция memcmp
не буду использоваться, чтобы выдержать сравнение, пустой указатель отключил строки
Стандартная Библиотечная функция memcmp
не буду использоваться, чтобы выдержать сравнение, пустой указатель отключил строки.
Это правило прибывает из MISRA C®: 2 012 Поправок 1.
Если memcmp
используется, чтобы сравнить две строки, и длина любой строки меньше количества сравненных байтов, строки могут казаться отличающимися, даже когда они - логически то же самое. Символы после пустого терминатора строки сравнены даже при том, что они не являются частью строки.
Например:
memcmp(string1, string2, sizeof(string1))
string1
более длинно, чем string2
.Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Стандартные библиотеки |
Категория: необходимый |
Категория AGC: необходимый |
Check MISRA C:2012 (-misra3)
| MISRA C:2012 Rule 21.15
| MISRA C:2012 Rule 21.16