使用结构时取消引用 NULL 指针错误

Dereferencing NULL pointer error while using structs

struct data_calend {
    int day;
    int year;
    int month;
};

struct personal_data {
    char* first_name, * last_name, * occupation, * department, code[13];
    data_calend birth_date, empl_date;
};   

这些是我的结构,我在看似简单和基本的事情上遇到了麻烦:

personal_data* p, * min{};
min->empl_date.day = p[0].empl_date.day; 

执行此操作时我收到一条错误消息,提示我正在 取消引用 NULL 指针 'min'。它编译并运行,但是当它到达那里时它停止了。我尝试以各种方式使用 * 运算符,但没有做任何事情。

编辑:添加了初始化部分。以为我之前添加了它,但显然没有。

正如错误所说:"Dereferencing NULL pointer 'min'"。您应该为 'min' 分配内存,以便最小指针可以指向它并取消引用它,也就是访问它指向的数据 - 可以成功,就像这样。

        struct personal_data *min = malloc(sizeof(struct personal_data));
        min->empl_date.day = p[0].empl_date.day.