Please enable JavaScript.
Coggle requires JavaScript to display documents.
字符输入与输出 - Coggle Diagram
字符输入与输出
单字符I/O
getchar()
putchar()
实际用法
如:while((ch=getchar())!=‘#’)
缓冲区
定义
在用户按下enter键之前不会重复打印刚输入的字符,这种输入称为缓冲输入,
存储输入的字符的地方称为缓冲区
作用
把若干个字符作为一个块进行传输比逐个发送更
节约时间
,其次可以
直接用键盘修改输入的字符
分类
完全缓冲
当缓冲区填满时才刷新缓冲区,将内容发送至目的地,通常用于文件输入
行缓冲
无缓冲
点击按钮就立刻执行一个命令,就可以使用无缓冲
IBM PC兼容机的编译器都支持无缓冲输入,原型都在conio.h头文件中
如:getche()回显无缓冲函数和getch()无回显无缓冲函数
回显:用户输入的字符直接显示在屏幕上
无回显:用户输入的字符不显示
Unix系统
可以使用ioctl()函数指定待输入的类型
结束键盘输入
C语言处理文件的方式
流
c程序直接处理的是流而不是文件,流是一个实际输入或输出映射的理想化数据流
键盘输入
c把输入和输出设备视为存储设备上的普通文件,
stdin流表示键盘输入stdout流表示屏幕输出
文件
定义
是存储器中存储信息的区域
文件结尾
方法
存储文件大小的信息,如果文件有3000字节,程序在读到3000字节时便达到文件的末尾(常用)
在文件末尾放一个特殊的字符标记文件结尾,如:Ctrl+Z
检测文件结尾
用getchar()、scanf()函数检测到文件结尾将返回一个特殊的值,即EOF(-1)
实际应用:while((ch=getcha())!EOF)
结束该程序
Unix、Linux系统
在一行开始处输入Ctrl+D
其他
任意位置输入Ctrl+Z
重定向
创建用户界面
输入验证