sprintf
Функциональный sprintf
копии представляют в виде строки вместо более эффективного strcpy
Это средство проверки инициировано, когда вы используете функциональный sprintf
скопировать строки.
Функциональный sprintf
комплексная функция со списком аргументов переменной. Прежде, чем выполнить функцию, компилятор анализирует список аргументов, чтобы определить типы аргумента, который добавляет наверху к коду. Обработка различных форматов ввода, что sprintf
поддержки делают функцию трудной оптимизировать. Например, даже если вы хотите скопировать только строки при помощи sprintf
, функция должна все еще поддержать копирование целых чисел. Универсальность sprintf
делает его менее эффективным и трудным оптимизировать. Используя sprintf
для копирования строк делают ваш код неэффективным.
Чтобы зафиксировать этот дефект, осуществите рефакторинг свой код и используйте выделенные функции, такие как strcpy
и strcat
или их варианты, чтобы скопировать строки.
Повышения производительности могут варьироваться на основе компилятора, реализации библиотеки и среды, которую вы используете.
Группа: Производительность |
Language:C | C++ |
Значение по умолчанию: Off |
Синтаксис командной строки:
inefficient_sprintf |
Удар: Средняя |