C++ 输入是在DOS显示的不是我输入的字符~而是*号~请问怎么实现

来源:百度知道 编辑:UC知道 时间:2024/05/28 18:29:46
是怎么实现 输入是显示的是*号而不是字符~就像我们输入用户密码的时候一样

用这段代码来搞定:
char ch[10];
int i = 0;
while( ( ch[i++] = cin.get() ) !=EOF )
cout.put( '*' );

C++本身是支持C语言编程的。你可以用C语言的程序来实现。程序如下:
for(i=0;i<10;i++)
{
p[i]=getch();
printf(\"*\");
}
这是按字符读取出一个10元素的字符串,当然,你也可以直接用字符串类型。

你的DOS是不是不支持中文,是不是你输入的是中文哦``

引用地址:
http://post.baidu.com/f?kz=5438409

#include <stdio.h>

int inputpw (char *password,int len); /*len为密码的最长长度*/

main (void)
{ int l;
char pw[13];
l=inputpw(pw,12);
printf("\n刚才输入%d位的密码:%s",l,pw);
return 0;
}

int inputpw(char *password,int len)
{
int i=0; /*密码数组索引值,同时也表示记录已显示星的数目,初始化值为0*/
char ch;
printf("\n请输入密码(长度小于等于%d位): ",len);
fflush(stdin); /*清洗流,以防妨碍密码正确输入*/
for ( ch = getch(); ch!=13;ch = g