0
void signup(struct user *u)
{ char c_pswd[80];
int i,flag=1;
clrscr();
printf("\n>ENTER FULL NAME: ");
gets(u->name);//scanf("%s",u->name);
printf("\n>ENTER USERNAME: ");
scanf(" %s",u->username);
printf("\n>ENTER DATE OF BIRTH: ");
scanf(" %s",u->dob);
printf("\n>ENTER EMAIL: ");
scanf(" %s",u->email);
printf("\n>ENTER GENDER(M/F): ");
scanf(" %c",&(u->gender));
printf("\n>ENTER MOBILE NUMBER: ");
scanf("%d",&u->mobile_no);
while(flag==1) {
printf("\n>ENTER PASSWORD(ATLEAST 8 CHAR): ");
scanf("%s",u->password);
printf("\n>CONFIRM PASSWORD: ");
scanf("%s",c_pswd);
if(strcmp(u->password,c_pswd)!=0)
{
clrscr();
printf("\t\tPASSWORDS DON'T MATCH ENTER AGAIN...");
}
else {
clrscr();
printf("\n\n\n\n\n\n\n\t\t\tSIGNUP SUCCESFUL!!!");
printf("\n\n\nREDIRECTING TO LOGIN...");
delay(5000);//time delay of 5 seconds
flag=0;//AGAIN GOES FOR PASSWORD INPUT AND VERIFICATION
}
}
}
_compiler_不会跳过任何内容。 Te编译器负责_generating_代码不为_executing_它 - 如果有什么“跳过”任何东西,那么它是_your code_这样做, – Clifford
通常在'stdin'流中使用'fgets()',而不是那些可怕的不安全的''get ()'。对于'scanf()'带空格的字符串问题,请参阅https://stackoverflow.com/questions/1247989/how-do-you-allow-spaces-to-be-entered-using-scanf – Clifford
代码是什么_calling_'注册()'看起来像?在调用之前输入缓冲区的状态是什么? – Clifford