如何从控制台获取密码字符,但将其作为星号回显[重复]

问题描述 投票:-1回答:1

这个问题在这里已有答案:

我想知道如何使用控制台中的字符

scanf, getch()

或其他东西,当用户提供输入时,我希望屏幕显示:

******

为每个角色。

c input
1个回答
1
投票

如果您使用的是Windows,我认为您可以使用下面给出的内容 -

#include <stdio.h>
#include <conio.h>
int main(){
    char str[8];
    int i=0;
    printf("Enter the password :\n");
    while (i< 8){
        str[i]=getch();
        printf("*");
        i++;
    }
    str[i]='\0';
    return 0;
}

getch()函数在类Unix系统上并不容易获得。 (cursesncurses库提供了getch()函数,但您必须调用函数来正确设置终端,然后将其重置回已知状态。)

© www.soinside.com 2019 - 2024. All rights reserved.