Тема: Перевірка виділення пам'яті
Була функція:
struct TreeNode *insert(struct TreeNode* rootPtr, int data) {
    if (rootPtr == NULL)
    {
        rootPtr = (struct TreeNode *)malloc(sizeof(struct TreeNode));
        rootPtr->value = data;
        rootPtr->left = NULL;
        rootPtr->right = NULL;
    }
    else if (data < rootPtr->value) {
        rootPtr->left = insert(rootPtr->left, data);
    }
    else {
        rootPtr->right = insert(rootPtr->right, data);
    }
    return rootPtr;
}Викладач сказав, що потрібно перевіряти malloc, чи поверенула вона вказівник NULL:
struct TreeNode *insert(struct TreeNode* rootPtr, int data) {
    if (rootPtr == NULL)
    {
        if (!(rootPtr = (struct TreeNode *)malloc(sizeof(struct TreeNode)))) {
            printf("Error: can't allocate memory");
            EXIT_FAILURE;
        }
        else {
            rootPtr->value = data;
            rootPtr->left = NULL;
            rootPtr->right = NULL;
        }
    }
    else if (data < rootPtr->value) {
        rootPtr->left = insert(rootPtr->left, data);
    }
    else {
        rootPtr->right = insert(rootPtr->right, data);
    }
    return rootPtr;
}Невпевненний чи правильно я написав чи ні. Як можно перевірити ?
