Message-ID: <001101bd7ded$f8a31380$a74e08c3@arthur> From: "Arthur" To: "DJGPP Mailing List" Subject: Why doesn't this work? Date: Tue, 12 May 1998 22:33:57 +0100 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0006_01BD7DF6.0DB2F260" Precedence: bulk This is a multi-part message in MIME format. ------=_NextPart_000_0006_01BD7DF6.0DB2F260 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Found a simple password program in QBASIC and as an exercise tried to convert it to C. So simple, you may say. It is, but for the life of me I could not get printf (of all things) to work. Source attached. Yes, I know that it is not optimised fully, but the routine is there and I know it works. Why does it not prompt you for your password until after you have typed it? It works if I use cprintf or scanf, so I assume that after printf is used, the text is not printed until some interrupt is set off (like a function call). I thought it was the simple "print to stdout" routine? James Arthur jaa AT arfa DOT clara DOT net ------=_NextPart_000_0006_01BD7DF6.0DB2F260 Content-Type: application/octet-stream; name="password.c" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="password.c" #include #include #include #include char password(void) { char letter[5],count; printf("\n\n Please enter your password: "); for (count=0;count<5;count++) { while (kbhit()!=0); letter[count]=getch(); printf("*"); } letter[5]='\0'; return (!strcmp(letter,"hello")); } int main(void) { printf("-------------------------\n"); printf("-- PASSWORD PROTECTION --\n"); printf("-------------------------\n"); while(password()==0); printf("\n\n Password Accepted!"); return 0; } ------=_NextPart_000_0006_01BD7DF6.0DB2F260--