/*星号密码输入功能*/
#include <stdio.h>
#include <conio.h>
#define MAXLEN 13 /*密码最大长度为12(13-1)*/
int main()
{
char password[MAXLEN];
char c;
int i=0;
puts("请输入密码:");
while(i<MAXLEN-1){
c=getch(); /*接收字符不回显*/
switch (c)
{
case 8: /*BackSpace键*/
/*用一个空格替换原字符并把光标后移一位*/
if (i!=0){
--i;
password[i]='\0';
putchar('\b');
putchar(' ');
putchar('\b');
break;
}
break; /*当i为0时退出*/
case '\r': /*回车键*/
goto dispkey;
default:
password[i]=c;
putchar('*');
++i;
}
}
dispkey:
password[i]='\0';
printf("\n你的密码是:\n%s",password);
getch();
return 0;
}
输入出错时,按backspace键清除
[此贴子已经被作者于2007-2-7 17:21:40编辑过]