FinalDestiny117 发表于 2019-7-2 14:14:17

为什么不能给结构体中的元素赋值?

本帖最后由 FinalDestiny117 于 2019-7-2 15:03 编辑

结构体如下:
#include <iostream>
#include <stdlib.h>
using namespace std;

struct SCORE {
    int courseId;
    int score;
    SCORE *pnext;
};
struct STU_SCORE {
    char name;
    int stuId;
    SCORE *scoreHead;//学生课程成绩列表
    struct STU_SCORE *pnext;
};

int main()
{
    STU_SCORE *head=( STU_SCORE *)malloc(sizeof(STU_SCORE));
    head->stuId=-1;
    head->pnext=head;

    head->scoreHead->courseId=-1;
    return 0;
}


在最后一步想给scoreHead结构体中的courseId赋值但在运行的时候出错了

Krant5 发表于 2019-7-2 15:42:32

本帖最后由 Krant5 于 2019-7-2 15:43 编辑

成员变量:struct SCORE同样需要动态分配空间

风扫地 发表于 2019-7-2 15:49:26

同楼上:


SCORE *scoreHead;//学生课程成绩列表

指针必须指向可用安全内存才能通过指针对可用安全内存进行读写。。。
scoreHead
你知道现在他现在中指向哪里么?就开始瞎鸡儿用。

FinalDestiny117 发表于 2019-7-2 20:31:41

Krant5 发表于 2019-7-2 15:42
成员变量:struct SCORE同样需要动态分配空间

谢谢谢谢,知道啦~

FinalDestiny117 发表于 2019-7-2 20:32:49

风扫地 发表于 2019-7-2 15:49
同楼上:




谢谢啦,知道了~
页: [1]
查看完整版本: 为什么不能给结构体中的元素赋值?