网站建设什么最重要,h5网页设计报告,网站什么英文字体,家在坪山业主论坛家在深圳C库函数
C文件操作用库函数实现#xff0c;包含在stdio.h中#xff0c;系统自动打开和关闭三个标准文件#xff1a;
标准输入-键盘#xff08;stdin#xff09;标准输出-显示器#xff08;stdout#xff09;标准出错输出-显示器#xff08;stderr#xff09;
文件打…C库函数
C文件操作用库函数实现包含在stdio.h中系统自动打开和关闭三个标准文件
标准输入-键盘stdin标准输出-显示器stdout标准出错输出-显示器stderr
文件打开—fopen()
函数原型
FILE *fopen(const char *filename, const char *mode)该函数使用给定的模式 mode 打开 filename 所指向的文件。其中mode值为以下
文件使用方式含义“r”打开一个用于读取的文件。该文件必须存在。“w”创建一个用于写入的空文件。如果文件名称与已存在的文件相同则会删除已有文件的内容文件被视为一个新的空文件。“a”追加到一个文件。写操作向文件末尾追加数据。如果文件不存在则创建文件。“r”打开一个用于更新的文件可读取也可写入。该文件必须存在。“w”创建一个用于读写的空文件。“a”打开一个用于读取和追加的文件。
返回值该函数返回一个 指向文件结构体的FILE 指针。否则返回 NULL且设置全局变量 errno 来标识错误。
文件读/写
函数原型
size_t fread ( void *ptr, size_t size, size_t count, FILE *fp );
size_t fwrite ( void *ptr, size_t size, size_t count, FILE *fp );fread() 函数用来从指定文件中读取块数据。所谓块数据也就是若干个字节的数据可以是一个字符可以是一个字符串可以是多行数据并没有什么限制。对参数的说明
ptr 为内存区块的指针它可以是数组、变量、结构体等。fread() 中的 ptr 用来存放读取到的数据fwrite() 中的 ptr 用来存放要写入的数据。size表示每个数据块的字节数。count表示要读写的数据块的块数。fp表示文件指针。
理论上每次读写 size*count 个字节的数据。
返回值返回成功读写的块数也即 count。 如果返回值小于 count
对于 fwrite() 来说肯定发生了写入错误可以用 ferror() 函数检测。对于 fread() 来说可能读到了文件末尾可能发生了错误可以用 ferror() 或 feof() 检测。
文件关闭—fclose()
函数原型fclose(fp) 作用关闭fp指向的文件使文件指针变量与文件“脱销”释放文件结构体和文件指针。正常关闭返回0出错时返回非0
C库函数读写文件示例
编程打开文件a.txt将文件中的内容复制到文件c.txt中
#includestdio.h
#includestdlib.h
#includefcntl.h //文件信息控制
#define count 1 //数据块的个数
int main(int args,char*argv[])
{FILE *fp1,*fp2;long len0;char *p;p(char*)malloc(sizeof(char)*count);fp1fopen(a.txt,r); //以只读方式打开文件if(fp1NULL){printf(Open a.txt fail!);exit(1);}fp2fopen(c.txt,w);if(fp2NULL){printf(Open c.txt fail!);exit(1);}while(fread(p,sizeof(char),count,fp1)1) //读取一个字符{fwrite(p,sizeof(char),count,fp2);len;}fclose(fp1);fclose(fp2);free(p); //释放空间return 0;
}