13
文件的读写(四)
④ 读写一个“记录”(成“块”读写) P317 适用于结构体等复杂实体。 写入 fread(p,size,n,fp) 读入 fwrite(p,size,n,fp) p-实体指针 size-字节数 n-多少次 fp-文 件指针 调用成功,返回n值。
示例: P318例13.3
14
} fclose(fpr);
果。
fclose(fpw);
11
}
#define NULL 0
#include <stdio.h>
FILE *fp;
char *s="123";
main()
{
char ch;
示
clrscr(); if ((fp=fopen("d:\\tc\\a.dat",“w+")) ==NULL)
3
磁盘文件分类
按其存储方式,C文件可以分为: ASCII文件(文本文件)
按数据的ASCII编码方式存放(可用文字编辑软件如 “记事本”打开来看)。 二进制文件 按数据在内存中存储的形式原样存放(0和1的集合) C系统在处理这些文件时,并不区分类型,都看成 是字符流(即以字节为存取单位)。输入输出字符 流的开始和结束只由程序控制而不受物理符号(如 回车符)的控制,故称“流式文件”。
}
12
文件的读写(三)
③ 格式化读写 P321 适用于一般实体,如数值型变量。 fscanf(fp,“%d,%f”,&a,&b); 将磁盘文件中的数据送给变量a,下一个送给变量b fprintf(fp,“%d,%6.2f”,a,b); 将变量a和b按%d和%f格式输出到fp所指文件上 比较:scanf(“%d,%f”,&a,&b); printf(“%d,%6.2f”,a,b);