C++ Password character echo


by Deathfish
Tags: c++, character echo
Deathfish
Deathfish is offline
#1
Jul14-10, 05:49 AM
P: 86
The problem statement, all variables and given/known data

Currently using stdio.h, conio.h, string.h, stdlib.h
not using iostream, namespace std etc.

I am asked to make a password prompt where each character echoes an asterisk (*)

The user must be able to backspace and delete to make corrections.

The password is then stored in an array which can accomodate up to 100 passwords.

The attempt at a solution

count=0;
while(c != eof())
{
`c=getch();
if (c != eof())
{
printf("*");
c=pw[userid][count];
count++;
}
}
pw[userid][count] = '\0';

sadly, the output indentation looks horrible and it is uneditable using backspace and delete.
Phys.Org News Partner Science news on Phys.org
Lemurs match scent of a friend to sound of her voice
Repeated self-healing now possible in composite materials
'Heartbleed' fix may slow Web performance
MATLABdude
MATLABdude is offline
#2
Jul15-10, 11:44 PM
Sci Advisor
P: 1,724
As I recall, getch returns any key presses. This includes control characters, such as, say, the backspace character (ASCII 0x08):
http://en.wikipedia.org/wiki/ASCII

You might also want to do some input filtering to ensure that only characters you want accepted actually are (again, look at the ASCII table). Lastly, rather than go crazy with allowing the user to edit and change the password, you might want to consider using a "Please type password again", just to make sure the user is entering both the same.

Good luck!


Register to reply

Related Discussions
What are the meaning of monopole character and dipole character? Special & General Relativity 2
Get the contents of a file, character by character Programming & Computer Science 7
The echo Introductory Physics Homework 9
echo in the ocean Introductory Physics Homework 2