V2508. MISRA. The function with the 'atof/atoi/atoll/atoll' name should not be used.


Данное диагностическое правило основано на руководстве MISRA (Motor Industry Software Reliability Association) по разработке программного обеспечения.

Анализатор выдаст предупреждение, если обнаружит использование следующих функций:

  • atof;
  • atoi;
  • atol;
  • atoll.

Неправильное использование этих функций может привести к возникновению неопределённого поведения. Это может произойти, если аргумент функции не является валидной С-строкой или если результирующее значение выходит за границы возвращаемого типа.

Пример кода, на который анализатор выдаст предупреждение:

void Foo(const char *str)
{
 int val = atoi(str);
 ....
}

Для C анализатор также выдаст предупреждение, если обнаружит определение макроса с одним из соответствующих имён.


Найденные ошибки

Проверено проектов
355
Собрано ошибок
13 303

А ты совершаешь ошибки в коде?

Проверь с помощью
PVS-Studio

Статический анализ
кода для C, C++, C#
и Java

goto PVS-Studio;