在包含stdlib.h头文件下使用malloc函数依然写入访问权限冲突

在学习二叉树时想要动态申请内存,于是使用了malloc函数

然而得到了报错:在其中已经有了<stdlib.h>头文件,但是malloc之后依然显示"引发了异常: 写入访问权限冲突。A 是 nullptr。"

在查阅一大堆资料后无解
编译环境是VS2022
#include<stdlib.h>
#include<malloc.h>
#include<stdio.h>
//已经包含<stdlib.h>以及<iostream>
using namespace std;
typedef char ElemType;

typedef struct BiTNode
{
    ElemType data;
    struct BiTNode* lchild, * rchild;


}TREE, * LPTREE;

//创建二叉树  前序遍历
void CreateBiTree(LPTREE* A)
{
    ElemType c;
    cout << "请输入字符:" << endl;
    cin >> c;
    if (c == ' ')
    {
        *A = NULL;
    }
    else
    {
        *A = (TREE*)malloc(sizeof(TREE));

        if (A == NULL)
        {
            return;
        }
        (*A)->data = c;
        CreateBiTree(&(*A)->lchild);
        CreateBiTree(&(*A)->rchild);
    }

}


void print(ElemType data, int level)
{
    cout << data << endl;
    cout << level << endl;
}

void preOrder(LPTREE root, int level)
{
    if (root)
    {
        print(root->data, level);
        preOrder(root->lchild, level + 1);
        preOrder(root->rchild, level + 1);
    }
}

int main()
{
    LPTREE* A = NULL;

    CreateBiTree(A);
    cout << "先序遍历" << endl;
    preOrder(*A, 1);

    system("pause");
    return 0;

}


应该是被包含在另外两个之一里了吧,把malloc删掉就行吧