我正在尝试创建结构“出生日期”,以及将值分配给结构的函数,我想知道是否可以像这样以某种方式做到这一点:
(PS。我经常收到第 2 行和第 23 行的错误“Argument list syntax error”。)
#include <stdio.h>
void input (dob_st *);
int main ()
{
typedef struct
{
int year;
int month;
int day;
}
dob_st;
dob_st date;
dob_st *p;
p=&date;
input (*p);
printf("%02i.",p->day);
printf("%02i.",p->month);
printf("%i.",p->year);
return 0;
}
void upis (dob_st *p)
{
printf ("Date of birth:\nDay?\n");
scanf ("%i",&(p->day));
printf ("Month?\n");
scanf ("%i",&(p->month));
printf ("Year?\n");
scanf ("%i",&(p->year));
}
最佳答案
我认为您得到这个是因为 dob_st
的定义仅在 main
本地——它没有在这个方法之外定义。 void input (dob_st *);
方法无法知道dob_st
是什么,后面调用的是upis
,不是input
,这可能是另一个错误。
关于C程序。 : Structure as argument of function?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/959886/