C代码中的总线错误不清楚

时间:2018-01-17 12:54:18

标签: c bus-error

我目前正在尝试学习C,为了做到这一点,我尝试创建非常简单的代码,请求人的名字并将其放入结构中。然后应该使用“print_contact”函数继续打印信息。

出于某种原因,我不断收到总线错误10,我不明白为什么会这样。

typedef struct {

    char *first_name;
    char *last_name;

} contact;

void print_contact(contact *c) {
    printf("Name: %s %s\n", c->first_name, c->last_name);
}

contact *populate_contact() {

    contact *c;
    char *input;

    c = (contact *)malloc(sizeof(contact));

    printf(">>> Please Input The First Name: ");
    fgets(input, 100, stdin);
    c->first_name = strdup(input);
    c->last_name = "Doe";

}


int main() {


    contact m = *populate_contact();

    print_contact(&m);


    return 0;
}

0 个答案:

没有答案