当前位置: 首页 > news >正文

长春网站制作价格html做一个简单的网页

长春网站制作价格,html做一个简单的网页,网站推广产品,住房和建设部官方网站一. 前言 我们在学习C语言的时候,getchar都是阻塞的,等待用户输入字符并且输入回车后才返回。但是有时候我们希望把getchar设置为非阻塞,或者说,当我们遇到getchar函数变成非阻塞的了,我们应该怎么解决这个问题&#x…

一. 前言

        我们在学习C语言的时候,getchar都是阻塞的,等待用户输入字符并且输入回车后才返回。但是有时候我们希望把getchar设置为非阻塞,或者说,当我们遇到getchar函数变成非阻塞的了,我们应该怎么解决这个问题,例如,login进程(会调用getchar函数)不等你输入用户名了,直接返回了,等等。

二. getchar设置为非阻塞的方法

        getchar函数的实现大致如下:

int getchar(void) {char c;ssize_t bytesRead = read(STDIN_FILENO, &c, sizeof(char));if (bytesRead == -1) {// 读取错误return EOF;} else if (bytesRead == 0) {// 读取结束return EOF;} else {// 返回读取的字符return (int)c;}
}

        可以看到,getchar是调用了read函数的,从stdin标准输入中获取内容。所以,问题就很简单了,我们只要把标准输入设置为非阻塞就好了。

        我们知道,在嵌入式中,init进程要做的一个工作就是打开终端设备,其中,把终端设置为非阻塞就可以了,如下:

open("/dev/ttyS0", O_RDWR|O_NOCTTY|O_NONBLOCK)

        这样,当init进程启动login进程时,login进程会调用getchar,此时就会出现启动login进程,login进程不等待输入用户名密码直接返回的情况。

三. 总结

        getchar函数内部其实会调用read函数,如果需要把getchar设置为非阻塞的形式,就需要在打开终端的时候,把终端设置为非阻塞模式。

http://www.hkea.cn/news/741145/

相关文章:

  • 可信赖的南昌网站制作站长工具网站
  • 济南建站公司电话成都关键词自然排名
  • 门户网站开发公司推广网页
  • 如何做网站认证实时军事热点
  • 上海的网站建设公司哪家好企业网站建设
  • 专业b2c电商网站制作网站推广要点
  • 现在的网站用什么程序做百度云官网登录入口
  • vs做网站怎样加数据库新闻小学生摘抄
  • 广州做网站mxszpt小说排行榜
  • 有什么网站是python做的网站营销策划公司
  • 长春有什么好的网站制作公司链接购买
  • 毕设网站佛山网站建设十年乐云seo
  • 北京做网站建设的公司哪家好手机怎么创建网站
  • winforms做网站注册百度账号
  • 玉泉路网站建设营销培训课程有哪些
  • 渭南做网站费用搜索引擎排名优化是什么意思
  • 做网站开发需要学什么软件微信公众平台开发
  • 网站整体营销方案网络营销的特点是什么?
  • 国内知名的网站建设公司有哪些百度指数专业版app
  • 画画外包网站如何推广一个网站
  • 互联网公司响应式网站深圳google推广
  • 深圳网站设计哪好什么推广平台比较好
  • 打开英文网站字体不对教程seo推广排名网站
  • 昭通市建设局网站太原百度关键词优化
  • 个人建网站允许吗seo职位要求
  • 环保网站设计网络营销优化推广
  • 网页设计网站制作公司冯耀宗seo视频教程
  • 怎么用路由器做网站百度指数平台官网
  • 济南做网站互联网公司有哪些seo是什么公司
  • 辛集seo网站优化价格许昌网站seo