Code:
void LOGIN_GetUsername();
typedef struct {
char OrigCurr[4];
char WantCurr[4];
float ExRate;
} DATATYPE_Rates;
typedef struct {
char User[31];
char Pass[31];
char Role[14];
} DATATYPE_Users;
typedef struct {
int UserNum;
char User[31];
char Pass[31];
char Role[14];
} DATATYPE_Login;
int main() {
DATATYPE_Rates STRUCT_Rates[100];
DATATYPE_Users STRUCT_Users[100];
DATATYPE_Login STRUCT_Login;
int COUNT_Struct_Rates, COUNT_Struct_Users;
LOGIN_GetUsername(STRUCT_Users, STRUCT_Login, COUNT_Struct_Users);
...
}
void LOGIN_GetUsername(DATATYPE_Users *STRUCT_Users, DATATYPE_Login *STRUCT_Login, int COUNT_Struct_Users) {
int Done = 0;
while (Done == 0) {
printf(" Username » ");
scanf("%s", STRUCT_Login.User);
STRUCT_Login.UserNum = LOGIN_GetUserNum(STRUCT_Users, STRUCT_Login, COUNT_Struct_Users);
if (STRUCT_Login.UserNum != COUNT_Struct_Users) {
printf(" ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙\n");
break;
}
else {
printf(" [Error!] Username is not in the database.\n\n");
continue;
}
}
}
int LOGIN_GetUserNum(DATATYPE_Users *STRUCT_Users, DATATYPE_Login *STRUCT_Login, int COUNT_Struct_Users) {
int i;
for (i = 0; i < COUNT_Struct_Users; i++) {
if (strcmp(STRUCT_Users[i].User, STRUCT_Login.User) == 0) {
break;
}
}
return i;
}
And here are the errors:
Code:
In function ‘LOGIN_GetUsername’:
error: request for member ‘User’ in something not a structure or union
error: request for member ‘UserNum’ in something not a structure or union
error: request for member ‘UserNum’ in something not a structure or union
In function ‘LOGIN_GetUserNum’:
error: request for member ‘User’ in something not a structure or union