我正在尝试打印,但无法弄清楚正确的命令

时间:2017-12-05 00:31:35

标签: c

struct Name {                                  // structure
  char firstName[31];          
};

int main(void) {
  struct Name name;                            // structure type variable 
  void getName(struct Name *name);
  printf("First name: %s\n", name->firstName); //printing error occurring
}

void getName(struct Name *name) {               //function definition
  printf("Please enter the contact’s first name: ");
  scanf("%s", name->firstName);                //taking the input from user
}

在我的代码中,我正在尝试创建一个联系人管理系统。我有结构功能和主要功能。我正在做的是我有一个结构,我将该结构传递给一个函数。该函数获取结构成员的输入并存储它。但是在调用getName()函数时以及在打印我从用户那里获取的结构成员输入时,我的语法出现了问题。

1 个答案:

答案 0 :(得分:0)

错误在于您访问对象成员的方式。它应该被访问如下: { - 1}}代替 - >运营商。这是因为你有一个对象,而不是一个对象的引用(指针)。

所以正确的打印调用是:

name.firstName