当前位置: 技术问答>linux和unix
linux下如何做到从键盘输入字符不显示问题
来源: 互联网 发布时间:2016-02-05
本文导语: 在linux下用c写了一个程序,怎么能让从键盘输入的字符不显示在屏幕上, 就像windows下的getch()函数一样。linux下有没有这方面的函数。 | 1, linux下也有getch 2 如果你是输入密码的话有个现成的函...
在linux下用c写了一个程序,怎么能让从键盘输入的字符不显示在屏幕上,
就像windows下的getch()函数一样。linux下有没有这方面的函数。
就像windows下的getch()函数一样。linux下有没有这方面的函数。
|
1,
linux下也有getch
2
如果你是输入密码的话有个现成的函数,可以直接读去密码,在读取过程中屏幕上不显示,返回读取的字符串.
#include
main()
{
char passwd[14];
char *key;
char slat[2];
key= getpass("Input First Password:");
printf("%sn",key);
slat[0]=key[0];
slat[1]=key[1];
strcpy(passwd,crypt(key,slat));
key=getpass("Input Second Password:");
printf("%sn",key);
slat[0]=passwd[0];
slat[1]=passwd[1];
printf("After crypt(),1st passwd :%sn",passwd);
printf("After crypt(),2nd passwd:%s n",crypt(key ,slat));
}
3
如果是其它的,你可以用ioctl把屏幕的回显关掉.
linux下也有getch
2
如果你是输入密码的话有个现成的函数,可以直接读去密码,在读取过程中屏幕上不显示,返回读取的字符串.
#include
main()
{
char passwd[14];
char *key;
char slat[2];
key= getpass("Input First Password:");
printf("%sn",key);
slat[0]=key[0];
slat[1]=key[1];
strcpy(passwd,crypt(key,slat));
key=getpass("Input Second Password:");
printf("%sn",key);
slat[0]=passwd[0];
slat[1]=passwd[1];
printf("After crypt(),1st passwd :%sn",passwd);
printf("After crypt(),2nd passwd:%s n",crypt(key ,slat));
}
3
如果是其它的,你可以用ioctl把屏幕的回显关掉.