15。程序第 17 行用指针方式输出了这三个域的值。
12.3 本章小结
1. 位运算是C语言的一种特殊运算功能, 它是以二进制位为单位进行运算的。位运算
符只有逻辑运算和移位运算两类。位运算符可以与赋值符一起组成复合赋值符。如
&=,|=,^=,>>=,<<=等。
2. 利用位运算可以完成汇编语言的某些功能,如置位,位清零,移位等。还可进行数
据的压缩存储和并行运算。
3. 位域在本质上也是结构类型,不过它的成员按二进制位分配内存。其定义、说明及
使用的方式都与结构相同。
4. 位域提供了一种手段,使得可在高级语言中实现数据的压缩,节省了存储空间,同
时也提高了程序的效率。
13.1 C 文件概述
13 文件
所谓“文件”是指一组相关数据的有序集合。这个数据集有一个名称,叫做文件名。实
际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、
库文件 (头文件)等。
文件通常是驻留在外部介质(如磁盘等)上的,在使用时才调入内存中来。从不同的角度
可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。
普通文件是指驻留在磁盘或其它外部介质上的一个有序数据集,可以是源文件、目标文
件、可执行程序;也可以是一组待输入处理的原始数据,或者是一组输出的结果。对于源文
件、目标文件、可执行程序可以称作程序文件,对输入输出数据可称作数据文件。
设备文件是指与主机相联的各种外部设备,如显示器、打印机、键盘等。在cāo作系统中,
把外部设备也看作是一个文件来进行管理,把它们的输入、输出等同于对磁盘文件的读和写。
通常把显示器定义为标准输出文件,一般情况下在屏幕上显示有关信息就是向标准输出
文件输出。如前面经常使用的 printf,putchar 函数就是这类输出。
键盘通常被指定标准的输入文件,从键盘上输入就意味着从标准输入文件上输入数据。
scanf,getchar 函数就属于这类输入。
从文件编码的方式来看,文件可分为 ASCII 码文件和二进制码文件两种。ASCII 文件也
称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的 ASCII 码。
例如,数 5678 的存储形式为:
ASCII 码: 00110101 00110110 00110111 00111000
↓
↓
↓
↓
十进制码: 5 6 7 8
共占用 4 个字节。
ASCII 码文件可在屏幕上按字符显示,例如源程序文件就是 ASCII 文件,用 DOS 命令 TYPE
可显示文件的内容。由于是按字符显示,因此能读懂文件内容。
二进制文件是按二进制的编码方式来存放文件的。
例如, 数 5678 的存储形式为:
00010110 00101110
只占二个