Указатель, возвращенный из динамического распределения, не проверен на NULL или nullptr значение
Этот дефект возникает, когда вы получаете доступ к динамически выделенной памяти, не проверяя предварительно, успешно ли выполнено предшествующее выделение памяти.
Когда память динамически выделяется с помощью malloc, calloc, или reallocвозвращает значение NULL если запрошенная память недоступна. Если код, следующий за выделением, обращается к блоку памяти, не проверяя на это NULL значение, этот доступ не защищен от отказов.
Проверяйте возврат значение malloc, calloc, или realloc для значения NULL перед доступом к выделенному месту памяти.
int *ptr = malloc(size * sizeof(int));
if(ptr) /* Check for NULL */
{
/* Memory access through ptr */
}| Группа: Динамическая память |
| Язык: C | C++ |
| По умолчанию: Off |
Синтаксис командной строки: UNPROTECTED_MEMORY_ALLOCATION |
| Влияние: Низкое |
| ИДЕНТИФИКАТОР CWE: 253, 690, 789 |