Tc++中如何输入密码?

hzqq 2003-03-21 08:47:09
就象别的windows程序一样,输入密码时显示***
但是输入的内容可以正确读出,而且可以按Backspace修改
...全文
36 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cutestar 2003-03-22
  • 打赏
  • 举报
回复
#include <iostream>
#include <conio.h>

using namespace std;

int main(int argc, char *argv[])
{
char cResult[9]="",tempch;
int nLen=0;
while((tempch=getch())!=13)
{
if(tempch==8)
{
if(nLen>0)
{
cout<<"\b \b";
nLen--;
cResult[nLen]='\0';
}
else
continue;
}
else
{
cout<<"*";
cResult[nLen++]=tempch;
cResult[nLen]='\0';
}

if(nLen==8)
break;
}
cout<<"\nYou Input Char: "<<cResult;
getch();
return 0;
}
yzb1000 2003-03-22
  • 打赏
  • 举报
回复
up
andyfr1210 2003-03-22
  • 打赏
  • 举报
回复
输入的现时,再输出*号,应该就可以了
用户 昵称 2003-03-22
  • 打赏
  • 举报
回复
这个东西很多种写法。
ckacka 2003-03-22
  • 打赏
  • 举报
回复
#include <conio.h>
#include <stdlib.h>

int main()
{
char password[8];

for (int i=0; i<8; i++)
{
password[i] = _getch();
_putch('*');
}
_putch('\n');

for (i=0; i<8; i++)
{
_putch(password[i]);
}
_putch('\n');

system("pause");

return 0;
}
Caoyu015 2003-03-22
  • 打赏
  • 举报
回复
#define MAXLINE 255;
char *cy_gets()
{
static char t[ MAXLINE ];
char ch;
int flag=0,i=0;
for ( ; i<MAXLINE; )
{
ch=getch();
switch(ch)
{
case '\r':
case '\n':
t[i]='\0';
return(t);

case '\b':
if (i>0)
i--;
if (i==0)
flag++;
if ( i>0||flag==1 )
{
putch('\b');
putch(' ');
putch('\b');
}
break;
default:
t[i]=ch;
i++;
flag=0;
if (ch==' ')
putch(' ');
else
{
putch('*');
putch('\a');
}
}
}
t[ MAXLINE - 1 ]='\0';
return(t);
}

ji_da_sheng 2003-03-21
  • 打赏
  • 举报
回复
up
huigll 2003-03-21
  • 打赏
  • 举报
回复
#include<stdio.h>
#include<conio.h>
void main()
{
char pwd[8];
int i=0;
while(i<8)
{
if((pwd[i]=getch())!='\b')
{
if(pwd[i]==13) break;
printf("*");
i++;}
else
{
printf("\b%c\b",0);
i--;
}

}
pwd[i]='\0';

puts(pwd);
getch();
}

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧