一、在linux下实现密码输入不可见即输入密码时不会产生回显,可用getpass这个函数。
需要的头文件:#include<unistd.h>
使用样例:
int main()
{
char *eam;
eam = getpass(“请输入密码:\n”);
printf(“密码为:%s\n”,eam);
}
二、在linux下实现密码输入可见即输入密码时会产生回显(不可删除),操作如下:
需要的头文件:
#include<stdio.h>
#include<termios.h>
#include<unistd.h>
int main()
{
struct termios oldt,newt;
tcgetattr(0,&oldt);
newt = oldt;
newt.c_lflag &= ~(ECHO|ICANON);
char passwd[20] = {0};
char ch;
int i= 0;
printf(“请输入:\n”);
while(1)
{
tcsetattr(0,TCSANOW,&newt);
scanf("%c",&ch);
tcsetattr(0,TCSANOW,&oldt);
if(i = = 20 || ch == ‘\n’)
break;
passwd[i] = ch;
printf("*");
i&