跪求!!!!!!!!!!!

VIPVIPVIP 2009-06-12 02:30:19
#include <iostream.h>
#include <string.h>
#include <conio.h>
void main()
{
int log_flag=1;
int i=0;
char m;
char log_user[20];
char log_pwd[20];
cout<<"用户名:"<<endl;
cin>>log_user;
cout<<"密码:"<<endl;
cout.clear();
while((m=getch())!='\r')
{
if(m=='\b'&&i>0)
{
cout<<"\b";
cout<<" \b";//空格代替星号
i--;
}
else
{
cout<<"*";
log_pwd[i++]=m;
}
}
log_pwd[i]='\0';
}

这是我写的代码,主要是实现输入密码时用*号表示。当输入密码时,不显示星号,回车后就全显示了,这是怎么回事呢?求高手帮忙啊,谢谢啊
...全文
65 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiaohmily 2009-06-12
  • 打赏
  • 举报
回复
加上刷新函数试一下
yungtain 2009-06-12
  • 打赏
  • 举报
回复
#include <iostream.h> 
#include <string.h>
#include <conio.h>

int main()
{
int log_flag=1;
int i=0;
char m;
char log_user[20];
char log_pwd[20];
cout <<"用户名:" <<endl;
cin>>log_user;
cout <<"密码:" <<endl;
cout.clear();
while((m=getch())!='\r')
{
if(m=='\b'&&i>0)
{
cout <<"\b";
cout <<" \b";//空格代替星号
i--;
}
else
{
cout <<"*";
log_pwd[i++]=m;
}
}
log_pwd[i]='\0';
}


我运行没有错误,可以显示*号的

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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