当前位置:  技术问答>linux和unix

用read(STDIN_FILENO, &cc, 1)读取输入,如何屏蔽ctrl+键盘输入的乱码?

    来源: 互联网  发布时间:2015-09-11

    本文导语:  如题, 程序如下: #include  #include  #include  #include  #include  #include  #include  #include  #include  void putC(int c); int readc(void); void prstr(char *as); int main() { char s[1] = {0}; int i = 0; do{ i = readc(); sprintf(s,"%c",i); ...

如题,

程序如下:

#include 
#include 

#include 
#include 
#include 

#include 
#include 
#include 
#include 

void putC(int c);
int readc(void);
void prstr(char *as);

int main()
{
char s[1] = {0};
int i = 0;
do{
i = readc();
sprintf(s,"%c",i);
prstr(s); //测试用

}while(i!='n');

return 0;
}

int readc(void)
{
char cc;
int i = read(STDIN_FILENO, &cc, 1);
if( i != 1)
{
exit(0);
}

return (int)cc;
}

void prstr(char *as)
{
register char *s;

s = as;
while(*s)
putC(*s++);
}

void putC(int c)
{
write(STDERR_FILENO, &c, 1);
}

|
是不是可以用signal来屏蔽

|
注册一个SIGNAL函数,处理SIGINT信号,试试看吧(反正CTRL+C可以拦截到)!

|
这个~~~~ctrl+某键的组合有的是终端控制符,有的产生信号,要分别处理的

|
判断是不是ascii码就可以了

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 read():读取字条符
  • 系统启动问题(read block from filesystem resulted in short read!)在线等!!!
  • java命名空间javax.swing类progressmonitorinputstream的类成员方法: read定义及介绍
  • 请教: read一个socket, read返回需要多长时间?
  • java命名空间java.sql接口connection的类成员方法: transaction_read_uncommitted定义及介绍
  • read一个socket, 发现read到的长度是0, 是否一定代表对方调用了close关闭了socket?
  • java命名空间java.io类objectinputstream的类成员方法: readfully定义及介绍
  • if( (n=Readline( sockfd,line,MAXLINE) )==0)为什么服务器接收到客户FIN时,Read返回的是0。,既然FIN被读出来了,为什么Read返回的是0
  • java命名空间java.io类linenumberreader的类成员方法: read定义及介绍
  • 非阻塞打开设备文件,如果1秒read不到数据,想让read退出如何做?
  • java命名空间java.io接口objectinput的类成员方法: read定义及介绍
  • linux 下的read命令重定向
  • java命名空间java.io类objectinputstream的类成员方法: read定义及介绍
  • socket read返回问题
  • java命名空间java.nio.channels类filechannel.mapmode的类成员方法: read_write定义及介绍
  • 关于epoll ET模式read的一些问题
  • java命名空间java.io类filterinputstream的类成员方法: read定义及介绍
  • cshell脚本中read的问题
  • java命名空间java.text类attributedcharacteriterator.attribute的类成员方法: reading定义及介绍
  • 我的模块的READ没有被调用
  • java命名空间java.nio.channels类filechannel.mapmode的类成员方法: read_only定义及介绍
  • 关于shell read命令


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3