0
我想获取输入数据并使用结构打印它。当我运行这个代码时,它没有为姓输入。它直接要求输入名字的输入。有人可以帮我弄这个吗。谢谢。问题与获取()
address.c
typedef struct
{
char lname[25];
char fname[20];
char address[20];
char phonenumber[20];
}addressbook;
addressbook a;
int main()
{
printf("enter details:\n");
printf("enter lastname:\n");
gets(a.lastname);
printf("enter firstname:\n");
gets(a.firstname);
printf("enter address:\n");
gets(a.address);
printf("enter phone number:\n");
gets(a.phonenumber);
printf("lastname:%s\n",a.lastname);
printf("firstname: %s\n", a.firstname);
printf("address:%s\n", a.address);
printf("phone number:%s\n", a.phonenumber);
}
当我运行它时,它不会等待输入姓氏。它直接进入firstname。
只是一个注意:['gets()'是危险的](http://stackoverflow.com/questions/2843073/warninggets-function-is-dangerous) –
gets()已被弃用一段时间。使用getline()来代替。为了避免溢出 – CoolBeans
总是使用'fgets'而不是'gets',以避免溢出 –