我想为struct,mallocs的内存,并设置字段的指针作出结构的构造函数。但是,当我打印我相信我已经设置的内容时,我看到这些字段是空的。我也使用C99结构指针设置值
void init_student(struct student* student, char* name, int id, float gpa) {
student = (struct student*) malloc(sizeof(struct student));
student->name = name;
student->id = id;
student->gpa = gpa;
}
您正在覆盖'student',而不是修改它。 –
这是不够的代码来知道你在做什么。你给这个函数的参数是什么?你如何使用我返回的结构?最好使[mcve] –