C语言实现在输入密码时显示*,例如输入123,但是显示的是***
时间: 2023-09-04 19:09:26 浏览: 104
可以使用C语言中的getch()函数实现在输入密码时显示*的效果。具体实现方式如下:
```c
#include <stdio.h>
#include <conio.h>
int main() {
char password[20];
int i = 0;
char ch;
printf("Please enter password: ");
while ((ch = getch()) != '\r') { // 判断是否按下回车键
if (ch == '\b') { // 判断是否按下退格键
if (i > 0) {
printf("\b \b"); // 删除前一个字符
i--;
}
} else {
password[i++] = ch;
printf("*");
}
}
password[i] = '\0'; // 将密码字符串结束符设置为'\0'
printf("\nYour password is: %s", password);
return 0;
}
```
在上面的代码中,使用了getch()函数来读取用户输入的字符,并且判断了是否按下了回车键或退格键。如果是回车键,则结束密码输入;如果是退格键,则删除前一个字符;否则,将输入的字符存储在password数组中,并打印*。最后将password数组转换为字符串并输出。
阅读全文