我有一个结构变量“accounts”,在阅读用户输入时,我遇到了这些类似的问题,我觉得好像每个修复都是一样的。但是,我不能把手指放在“帐户”或“。”之前的“表达”上。关于问题是什么以及如何解决它的任何想法?
>main.c: In function âmainâ:
>main.c:143:18: error: expected expression before âaccountsâ
scanf("%s", &accounts.first[0]);
>main.c:146:18: error: expected expression before âaccountsâ
scanf("%s", &accounts.middle[0]);
^
>main.c:149:18: error: expected expression before âaccountsâ
scanf("%s", &accounts.last[0]);
^
>main.c:179:28: error: expected expression before â.â token
scanf("%d", &(accounts).accountBalance);
^
>main.c:180:13: error: expected identifier or â(â before â.â token
accounts.accountNum = tempAccNum;
^
>main.c:182:28: error: expected expression before âaccountsâ
accList[numAccounts] = accounts;
这是我声明结构的地方,如果这会有帮助:
typedef struct accounts
{
char first[20];
char middle[2];
char last[20];
int accountNum;
int accountBalance;
} accounts;
答案 0 :(得分:0)
编译器显然不认为accounts
和(accounts)
是表达式,这使我怀疑存在一个名为accounts
的类型。如果是这种情况,您需要做的就是重命名类型或变量。