linux 使用termios结构的密码程序

以下内容摘自 beginning linux programming

#include <termios.h>
#include <stdio.h>
#include <stdlib.h>

#define PASSWORD_LEN 8
int main()
{
struct termios its,newits;
char password[PASSWORD_LEN+1];

tcgetattr(fileno(stdin),&its);

newits = its;

newits.c_lflag &= ~ECHO;

printf("enter password: ");

if(tcsetattr(fileno(stdin),TCSAFLUSH,&newits)!=0)
{
fprintf(stderr,"could not set attributes\n");
}
else
{
fgets(password,PASSWORD_LEN,stdin);
tcsetattr(fileno(stdin),TCSANOW,&its);
fprintf(stdout,"\nYou enter %s\n",password);
}
exit(0);
}
解释: X &= ~FLAG(波浪线) 它的作用是清楚变量X中由FLAG标志定义的比特。

你可能感兴趣的:(linux 使用termios结构的密码程序)