我想按功能填充typedef
结构。我试过了:
typedef struct{
char *first_name, *last_name;
int id;
Date birthday;
} Person;
void ReadPerson(Person* person){
person = (Person*)malloc(sizeof(Person));
person->first_name = readString();
person->last_name = readString();
scanf("%d",&(person->id));
ReadDate(&(person->birthday));
}
主要功能:
void main(){
Person *tmp = NULL;
ReadPerson(tmp);
}
使用Bad Ptr值调用ReadPerson
tmp
后。
答案 0 :(得分:0)
如果在定义时在同一代码段中对变量进行malloc操作,可能会更优雅。如果您要定义" Person * tmp"将信息存储在main()中,然后在main()中使用malloc。在ReadPerson()上删除malloc。