首先看一下一般程序的组成:
1 库文件包含,为可能需要调用的库函数或类定义包含库文件。
2 类型定义,包括结构体类型、类类型;
3 函数声明;
4 其他文件中的全局变量的extern声明;
5 变量定义:为一些在程序编写时值未知的数据预约他们的存放处 ;
6 输入阶段 :获取执行时才能确定的用户数据。输入过程一般包括两步 :
6.1 显示提示信息;6.2 读取数据;
7 计算阶段 :由输入推导出输出的过程。通常通过各种计算得到。
8 输出阶段:显示程序执行的结果。
由上可知,输入、输出是程序很重要的组成部分。
通常,输入输出的方向性问题是站在内存的角度去看的:
输入输出作为库载入,也是为了空间效率的考量,当你不需要时,就可以不载入,让程序更轻量级。
一、C语言的输入输出
程序输入源和输出目标统称为设备(device)。无论什么设备,是用于输入还是输出,C语言都通过流进行输入和输出操作。
流与文件息息相关。这里的文件指的不是磁盘文件,而是程序待处理的流和实际物理设备之间的媒介。大多数情况下,C语言的初学者无需了解这些文件,因为流、文件、设备之间的交互都由C库函数和操作系统自动完成。
C语言的流有两种模式:文本模式和二进制模式。文本流只由字符组成,如发送至屏幕的文本数据。文本流被组织成行,每行最多可255个字符,且以行结束符或换行符结尾。文本流中的某些字符(如换行符)有特殊的含义。
ASCII文件是将存储在文件中的每个字节解释成一个ASCII字符,二进制文件是将文件内容解释成一个二进制的比特流,由程序解释这些比特流的意义。
1 C语言控制台的输入输出
可以用printf()、scanf()等函数直接读取和写入控制台或文件。控制台I/O函数自动写入stdout(标准输出,输入缓冲区)或读取stdin(标准输入,输出缓冲区),这些是预定义的文件指针。
1.1 输出
printf("格式控制串