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

黄冈商城网站建设谁做响应式网站

黄冈商城网站建设,谁做响应式网站,建筑中级职称查询网站,常州建设网站公司一. 前言 我们在学习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.yayakq.cn/news/26580/

相关文章:

  • 无锡建站方案上海做网站公司做网站的公司有哪些
  • 手机网站开发库wordpress自定义过滤
  • 建立网站ftp是什么电子商务平台的建设步骤
  • 秦皇岛网站制作价格平面广告怎么做
  • 做废品推广哪个网站好南通网站建设方案
  • 简述网站建设什么样的笔记本电脑适合网站开发
  • 分析seo做的不好的网站博客源码wordpress
  • 淘宝客做连接网站吗行情软件app网站大全下载
  • 百姓网免费发布信息平台网站关键词优化价格
  • 网站策划书编写茌平建设局网站
  • dw做网站导航新泰高品质网站建设
  • 网站建设服务代理商网站营销体系的建设及运营情况
  • 爱是做的电影网站网站建设公司那个好
  • 网站开发与编程wordpress 图片效果
  • 网站开发基础培训个人电脑做网站主机
  • 网站运营需要服务器吗行业网站网址
  • 后台网站要做权限前端还是后台做义马网站建设电话
  • 市场推广方案范文南宁优化营商环境
  • 关于网站建设营销类文章怎样申请注册公司网站
  • 域名虚拟服务器做网站几百的网站
  • 南通网站开发网站qq链接怎么做
  • 重庆网站seo推广苏州兼职网站开发
  • 怎么样推广网站个人网站html模板下载
  • 建设网站需要多大域名空间西宁网站seo价格
  • 公司网站的作用意义维护建设管理北京装饰公司名称
  • 佛山大沥网站建设免费域名注册永久阿里云
  • wordpress程序迁移常见网站性能优化手段
  • 网站建设与管理指什么长沙做企业网站的公司
  • 合肥网站建设外包昆明比较好的网站开发公司
  • 陕西省建设厅网站官网企业月报那个网站上可以找代加工的订单做