天天看点

c++ 读取内存数据 基址_CC++语言5|控制台和文件的输入、输出一、C语言的输入输出

首先看一下一般程序的组成:

1 库文件包含,为可能需要调用的库函数或类定义包含库文件。

2 类型定义,包括结构体类型、类类型;

3 函数声明;

4 其他文件中的全局变量的extern声明;

5 变量定义:为一些在程序编写时值未知的数据预约他们的存放处 ;

6 输入阶段 :获取执行时才能确定的用户数据。输入过程一般包括两步 :

6.1 显示提示信息;6.2 读取数据;           

7 计算阶段 :由输入推导出输出的过程。通常通过各种计算得到。

8 输出阶段:显示程序执行的结果。

由上可知,输入、输出是程序很重要的组成部分。

通常,输入输出的方向性问题是站在内存的角度去看的:

c++ 读取内存数据 基址_CC++语言5|控制台和文件的输入、输出一、C语言的输入输出

输入输出作为库载入,也是为了空间效率的考量,当你不需要时,就可以不载入,让程序更轻量级。

一、C语言的输入输出

程序输入源和输出目标统称为设备(device)。无论什么设备,是用于输入还是输出,C语言都通过流进行输入和输出操作。

流与文件息息相关。这里的文件指的不是磁盘文件,而是程序待处理的流和实际物理设备之间的媒介。大多数情况下,C语言的初学者无需了解这些文件,因为流、文件、设备之间的交互都由C库函数和操作系统自动完成。

C语言的流有两种模式:文本模式和二进制模式。文本流只由字符组成,如发送至屏幕的文本数据。文本流被组织成行,每行最多可255个字符,且以行结束符或换行符结尾。文本流中的某些字符(如换行符)有特殊的含义。

ASCII文件是将存储在文件中的每个字节解释成一个ASCII字符,二进制文件是将文件内容解释成一个二进制的比特流,由程序解释这些比特流的意义。

1 C语言控制台的输入输出

可以用printf()、scanf()等函数直接读取和写入控制台或文件。控制台I/O函数自动写入stdout(标准输出,输入缓冲区)或读取stdin(标准输入,输出缓冲区),这些是预定义的文件指针。

1.1 输出

printf("格式控制串

继续阅读