用户输入未保存到文件中

问题描述 投票:0回答:1

因此,我创建了2个文本文件,可以分别存储我的用户数据和职员数据,但没有存储我的数据,但是代码运行良好。这是我的代码

FILE *usr;
FILE *staf;
usr = fopen("users.txt","a+");
staf = fopen("staff.txt","a+");

// some data to be collected

if (choice == 's')
{
    fprintf(staf,"staffs: %d/%d/%d %s %s %s %s %s %d %s\n ",&add.month,&add.day,&add.year,add.name,choice,add.staff.username,add.password,add.email,&add.number);
    fclose(staf);
}
else if (choice == 'u')
{
    fprintf(usr," %d/%d/%d %s %s %s %s %s %d %s\n",&add.month,&add.day,&add.year,add.name,choice,add.user.username,add.password,add.email,&add.number);
    fclose(usr);   
}
else
{
    goto personnel;
}
c file fopen fclose
1个回答
0
投票

fprintf()的前三个替换项不匹配。 %d用于整数,您将指针传递给它。另外,我不确定,但是我怀疑您是否要将指针打印到文件。如果这样做,则使用%p。有关更多信息,请尝试man 3 printf

© www.soinside.com 2019 - 2024. All rights reserved.