例、十进制整数10000, 在内存中占两字节,其存放形式是:0010,0111,0001,0000 在二进制文件中也按这中方式存放。 在ASCI文件中,存放为31H、30H、30H、30H、30H,占五个字节, 它们分别是1、0、0、0、0、0字母的ASCI码。 4△ 内存中的存放形式 00100111100010000 十进制整数 10000 二进制文件中的存放形式 0010011100010000 ASCI码文件中的存放形式 00110001100110000001100000011000000110000 0x31 0x30 0x30 0x300x30
例、十进制整数10000, 在内存中占两字节,其存放形式是:0010,0111,0001,0000。 在二进制文件中也按这中方式存放。 在ASCII文件中,存放为31H、30H、30H、30H、30H,占五个字节, 它们分别是1、0、0、0、0、0字母的ASCII码
8、按照操作系统对磁盘文件的读写方式,文件可以分为“缓冲文件系 统”和“非缓冲文件系统”。 缓冲文件系统:操作系统在內存中为每一个正在使用的文件开辟一个读 写缓冲区。 内存 输出文件缓冲区」输出磁盘 程序数据 输出 输入输文件缓冲区输入 非缓冲文件系统:操作系统不开辟读写缓冲区
8、按照操作系统对磁盘文件的读写方式,文件可以分为“缓冲文件系 统”和“非缓冲文件系统”。 缓冲文件系统:操作系统在内存中为每一个正在使用的文件开辟一个读 写缓冲区。 非缓冲文件系统:操作系统不开辟读写缓冲区
ANSI C的缓冲文件系统 所谓缓冲文件系统是指,系统自动地在内存区为每个正 在使用的文件开辟一个缓冲区。 从内存向磁盘输出数据时,必须首先输出到缓冲区中。 待缓冲区装满后,再一起输出到磁盘文件中。 从磁盘文件向内存读入数据时,则正好相反:首先将一 批数据读入到缓冲区中,再从缓冲区中将数据逐个送到 程序数据区
ANSI C的缓冲文件系统 所谓缓冲文件系统是指,系统自动地在内存区为每个正 在使用的文件开辟一个缓冲区。 从内存向磁盘输出数据时,必须首先输出到缓冲区中。 待缓冲区装满后,再一起输出到磁盘文件中。 从磁盘文件向内存读入数据时,则正好相反:首先将一 批数据读入到缓冲区中,再从缓冲区中将数据逐个送到 程序数据区
13.2文件类型指针 口要调用一个文件,需要有以下的信息: 文件当前的读写位置 ◎与该文件对应的内存缓冲区的地址 缓冲区中未被处理的字符串 9文件操作方式等 缓冲文件系统会为每一个文件系统开辟一个“文件信息区”,在 stdio. h 中,它被定义为FILE类型数据,用于存放文件的有关信息(如文件名、 文件位置等) 注意:结构类型名“FILE"必须大写
要调用一个文件,需要有以下的信息: 13.2 文件类型指针 文件当前的读写位置 与该文件对应的内存缓冲区的地址 缓冲区中未被处理的字符串 文件操作方式等 缓冲文件系统会为每一个文件系统开辟一个“文件信息区”,在stdio.h 中,它被定义为FILE类型数据,用于存放文件的有关信息(如文件名、 文件位置等) 注意:结构类型名“FILE”必须大写
typedef struct { int fd r /*文件号* int cleft;/*缓冲区中剩下的字节数*/ int mode;/*文件操作模式*/ char* nextc;/*下一个字节的位置* char*buf;/*文件缓冲区位置*/ SFILE 其中:每个成员就是用来存放有关文件的各种信息的数据项 定义文件指针变量的一般形式为: FILE*文件结构指针变量名 例如、FILE*fp; 注意:只有通过文件指针,才能调用相应的文件
typedef struct { int _fd; /* 文件号 */ int _cleft; /* 缓冲区中剩下的字节数 */ int _mode; /* 文件操作模式 */ char * _nextc; /* 下一个字节的位置 */ char * _buff; /*文件缓冲区位置 */ }FILE; 其中:每个成员就是用来存放有关文件的各种信息的数据项。 定义文件指针变量的一般形式为: FILE *文件结构指针变量名 例如、FILE *fp; 注意:只有通过文件指针,才能调用相应的文件