如何调用此函数:从主

时间:2015-12-06 22:41:28

标签: c

我想调用一个函数但是无法调用。我总是得到错误。该程序要求用户输入座位号:

scanf("%d", &seatNum);

输入座位号后,将调用此功能:

void SeatMakeEmpty(Seat* seat) {
    strcpy((*seat).firstName, "empty");
    strcpy((*seat).lastName,  "empty");
    (*seat).amountPaid = 0;
    return;
}

如何调用该函数,firstNamelastName设置为“空”,amountPaid为0?

1 个答案:

答案 0 :(得分:1)

一个明显的问题是,您正在阅读这样的座位号:scanf("%d", &seatNum);,这意味着,seatNum是小数(因此是%d),所以是一个数字。

但是,函数SeatMakeEmpty(Seat* seat)请求类型为Seat的指针参数!您必须传递正确的参数。在通话SeatMakeEmpty(&seatNum);中,您传递的是指向int的指针,而不是Seat。所以在你的情况下,这意味着你必须:

  • 查找与用户提供的号码seatNum对应的正确座位。
  • 获取该席位并将 it 作为SeatMakeEmpty的参数传递。