如题
|
{
struct termios origt;
struct termios new;
int mode;
tcgetattr(STDIN_FILENO, &origt);
new = origt;
new.c_iflag &= ~(BRKINT | ICRNL);
new.c_lflag &= ~(ECHO | ICANON | ISIG);
tcsetattr(STDIN_FILENO, TCSANOW, &new);
mode = fcntl(STDIN_FILENO, F_GETFL);
mode |= O_NDELAY;
fcntl(STDIN_FILENO, F_SETFL, mode);
}
|
#include
#include
#include
#include
#include
#include
int getPasswd(char *passwd)
{
struct termio tbuf_old,tbuf;
ioctl(0, TCGETA, &tbuf_old);
ioctl(0, TCGETA, &tbuf);
tbuf.c_lflag &=~ECHO;
if (ioctl(0, TCSETAF, &tbuf) != 0)
return;
printf("please input passwd:");
scanf("%s", passwd);
ioctl(0, TCSETAF, &tbuf_old);
return 0;
};
int main()
{
char passwd[8];
getPasswd( passwd );
printf("pass: %sn", passwd);
return 1;
}
|
使用getpass函数
欢迎访问我的个人网站 www.linuxc.net