Проверьте все malloc, если они защищены с возвратом NULL - PullRequest
0 голосов
/ 04 марта 2019

У меня есть проект, который часто использует malloc.И мне интересно, есть ли возможность каким-то образом проверить, все ли мои malloc защищены от возврата NULL ?Может быть, определить что-то в заголовочном файле?Я пытался сделать это сам, проверил форумы - все тщетно.Любые возможные варианты?

1 Ответ

0 голосов
/ 04 марта 2019

Вы можете заменить все вызовы на malloc функцией-оболочкой, которая выполняет необходимую проверку NULL:

void *safe_malloc(size_t s)
{
    void *p = malloc(s);
    if (!p) {
        perror("malloc failed");
        exit(1);
    }
    return p;
}

Вы также можете сделать то же самое для calloc и realloc.

...