C语言中,怎么能在输入时,在屏幕上显示*号?

用scanf要求输入时,怎么才能让你输入的内容在屏幕上以*号显示?

出于某些原因可能只能在微软环境下用

#include <stdio.h>
#include <conio.h>

void main()
{
char pass[0x100];

for (int i = 0;; i++)
{
pass[i] = _getch();

if (pass[i] == '\r')
{
pass[i] = 0;

putchar('\n');

break;
}

putchar('*');
}

puts(pass);
putchar('\n');
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-02-10
用getch()来取用户输入,这么做:

#include<stdio.h>
#include<conio.h>

void main()
{
char c;
while(1)
{
c=getch();
if(c=='\r') break;
printf("*");
}
}本回答被提问者采纳
第2个回答  2019-02-27

getch()
函数
ch=getch();
printf("*");
第3个回答  2009-02-10
你是不是想使用密码输入
你使用预定义,然后可以
相似回答