嵌套结构 - 输入

时间:2017-01-27 13:26:14

标签: c pointers struct malloc

我需要在结构中输入变量(名字*)的名称 用malloc 我不明白为什么编程无法运行。 我插入名称(例如大卫) 它应该获取名称并将其放在临时数组中 然后调整指针的大小first_name * 并将字符串temp复制到first_name *

有人可以帮助我理解为什么它不起作用?

寻找功能" ReadPerson"。

float

感谢。

1 个答案:

答案 0 :(得分:1)

  

我不明白为什么程序无法运行

嗯,这是因为你试图替换不兼容的类型,而且体面的编译器应该告诉你这个。

让我们看一下函数void ReadPerson(Person *b)的结尾:

{
    ...
    ReadDate(b);          // error here
}

正如您所看到的,b属于Person *类型,您将其传递给期望void ReadDate(Date *a)类型的函数Date *

所以这可能是一个简单的错字,只需改为:ReadDate(&b->birthday);