user account name input
Hi, everybody! I want to ask one question, i have piece of code where i am trying to validate user account name input, and it seems working, despite of one thing if I put non existing name, the programs continue work, however it should be terminated. The code of problem is here:
Code:
printf("\nEnter Account Name: ");
fflush(stdin);
fgets(name, sizeof(name), stdin);
int len = strlen(name);
if(name[len-1] == '\n')
name[len-1] = '\0';
while (fread(buffer, sizeof(account), 1, members))
{
if(strcmp(buffer->acc_name, name)==0){
fgetpos(members,&here);
printf ("\nAccept! Account exists.");
break;
fsetpos(members, &here);
}
else{
if (!feof(members))continue;
else
{
break; printf("Account does not exist");
exit(1);}
}
}
when i debugging the code with non exisistng account name, it missing this part,
Code:
else
{
break; printf("Account does not exist");
exit(1);}
}
And i really cannot understand why it doesn't go there.I've tried to change the loop structure, but it doesn't work. I really cannot get what it can be. Thank you very much for help :)
|