size_t
аргумент передал любой функции в <string.h>
буду иметь соответствующее значение
size_t
аргумент передал любой функции в <string.h>
буду иметь соответствующее значение.
Это правило прибывает из MISRA C®: 2 012 Поправок 1.
Значение должно быть положительным и не больше, чем размер самого маленького объекта, переданного указателем на функцию. Например, предположите, что вы используете strncmp
функция, чтобы сравнить две строки lhs_string
и rhs_string
можно следующим образом:
strncmp (lhs_string, rhs_string, num)
num
должно быть положительным и не должен быть больше размера lhs_string
или rhs_string
, какой бы ни меньше.В противном случае использование функции может привести к доступу для чтения или доступу для записи вне границ аргумента функции.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Стандартные библиотеки |
Категория: обязательный |
Категория AGC: обязательный |