Данное диагностическое правило основано на руководстве MISRA (Motor Industry Software Reliability Association) по разработке программного обеспечения.
Анализатор выдаст предупреждение, если обнаружит использование следующих функций: 'atof', 'atoi', 'atol', 'atoll'.
Неправильное использование этих функций может привести к возникновению неопределённого поведения. Это может произойти, если аргумент функции не является валидной С-строкой или если результирующее значение выходит за границы возвращаемого типа.
Пример кода, на который анализатор выдаст предупреждение:
void Foo(const char *str) { int val = atoi(str); .... }
Для C анализатор также выдаст предупреждение, если обнаружит определение макроса с одним из соответствующих имён.
Данная диагностика классифицируется как:
|