c/c++ 缓冲输入和非缓冲输入
来源:互联网 发布:法律法规数据库系统 编辑:程序博客网 时间:2024/05/16 19:12
C语言有缓冲输入和非缓冲输入两种情况,默认缓冲输入,因为有的计算机不支持非缓冲输入。缓冲输入下,通过标准输入(键盘)输入的字符会先存在输入缓冲区里,同时会回显到屏幕上。这样就可以在输入回车(将输入缓冲区清空,并发送到程序的输入队列中,供程序使用)之前,进行输入的修改。但是也支持非缓冲输入,不需要输入回车来将输入发送给程序,而是键盘的任何输入都直接发送到程序的输入队列中。
简言之,缓冲输入的流程是:键盘-》输入缓冲区-》程序中的输入队列 非缓冲输入的流程是: 键盘-》程序中的输入队列
getche()和getch()这两个函数是用于非缓冲输入的,前者提供回显(记:多一个字母,多一个小功能),后者不提供回显。
C函数一般都有返回值,只是有时候不需要获取这个返回值罢了。
printf返回打印的字符的数目,有输出错误则返回负数。
scanf返回读入项目的个数,如果读入失败(比如想读入一个%d,但是用户却输入的'a')会返回0,这时候输入队列头指针不向后移,下次getchar或者scanf还是从刚才的位置开始;读到文件结尾返回EOF(一般在头文件中会有#define EOF -1)。
0 0
- c/c++ 缓冲输入和非缓冲输入
- c/c++ 缓冲输入和非缓冲输入
- c语言的输入缓冲
- c语言缓冲输入和非缓冲输入的分析(stdin和stdout流的应用,getchar,getch的区别)
- OIS 缓冲与非缓冲输入方式
- 【C语言】缓冲文件系统和非缓冲文件系统
- ogre中缓冲(buffered)输入方式和非缓冲(unbuffered)输入有什么区别?
- 基础教程四(帧监听器和非缓冲输入)
- C语言关于缓冲输入和通过键盘模拟文件结尾条件
- C的全缓冲、行缓冲和无缓冲
- the c programing language 1-22 较长输入行折成短些的多行,非缓冲方式实现
- IO_缓冲和非缓冲
- 基础教程五(缓冲输入)
- 缓冲输入字符流
- 4.输入缓冲
- 缓冲字节输入流
- Ogre笔记七:基础教程四—帧监听器和非缓冲输入
- C标准I/O缓冲区:全缓冲和行缓冲
- JAVA之JDK环境配置(JAVAC不是内部命令或外部命令)
- 基于多尺度深度网络的单幅图像深度估计
- 蓝桥杯 振兴中华(DFS深度优先遍历)
- Keepalived安装与配置
- 学习要点笔记---多线程_2
- c/c++ 缓冲输入和非缓冲输入
- 安卓 单例模式 Singleton 传递简单参数
- 浅谈Linux发行版之间的联系和区别
- JSON的解析
- javascript函数声明与函数表达式
- Java常用8大排序算法
- 数据库 Oracle设置口令到达终止时间后的宽限天数
- 最小生成树(普利姆算法、克鲁斯卡尔算法)(逻辑理解小结)
- OpenCV代码提取:flip函数的实现