* * * * * * * 说明一下原因 * * * * * 可以举例子,例如假设offset是50,各种情况文件偏移量是多少 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 实际IO的含义 将fflush与sync等函数做个对比 * 谁释放这buf? * 谁释放这buf? * 谁释放这buf? * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 用于将文件偏移量设置到文件的起始位置 函数原型 void rewind(FILE *fp); 参数和返回值 fp:文件指针 获取当前的文件偏移量 函数原型 int fgetpos(FILE *fp, fpos_t *pos); 参数和返回值 fp:文件指针 pos:fgetpos函数将文件偏移量填入pos中 成功返回0,出错返回非0 设置文件偏移量 函数原型 int fsetpos(FILE *fp, fpos_t *pos); 参数和返回值 fp:文件指针 pos:存储了要设置的文件偏移量 成功返回0,出错返回非0 对流有三种读写方式 每次读写一个字符 每次读写一行 每次读写任意长度的内容 输入函数 int getc(FILE *fp); int fgetc(FILE *fp); int getchar(); 返回值 成功返回欲读字符,若已处于文件尾或出错返回EOF getchar()等同于getc(stdin) getc通常是宏,fgetc是函数 不管出错还是到达文件尾,都是返回EOF。如何区分? 调用ferror或feof int ferror(FILE *fp); int feof(FILE *fp); 当遇到文件结束符时,feof返回真,ferror返回假 当出错时,feof返回假,ferror返回真 在大多数实现中,为每个流在FILE对象中维持了两个标志 出错标志 文件结束标志 调用clearerr清除这两个标志 void clearerr(FILE *fp); 输出函数 int putc(int c, FILE *fp); int fputc(int c, FILE *fp); int putchar(int c); 返回值 成功返回c,出错返回EOF putchar(c)等同于putc(c, stdout) putc通常是宏,fputc是函数 输入函数 char* fgets(char *buf, int n, FILE *fp); 参数和返回值 buf:存放从fp读出的数据 n:buf的大小 fp:文件指针 返回值:成功返回buf,出错或读到文件尾则为EOF fgets函数一直读到下一个新行符为止,但是不超过n-1个字符 buf缓存以null字符结尾 若读到下一个新行符,会超过n-1个字符,则只会返回一个不完整的行,缓存总是以null字符结尾。 下一次的fgets调用会继续读该行。 输出函数 char* fputs(const char *str, FILE *fp); 参数和返回值 str:以null为结尾的字符串 fp:文件指针 返回值:成功返回非负值,出错则为EOF null符不写入文件 每次I/O操作读写某种数量的对象,而每个对象具有指定的长度 例如,可读写一个二进制数组、结构 函数原型 size_t fread(void *ptr, size_t size, size_t nobj, FILE *fp); size_t fwrite(const void *ptr, size_t size, size_t nobj, FILE *fp); 参数 第一个参数ptr:用于读写的缓冲区 第二个参数size:每个对象的大小 第三个参数nobj:要读写的对象个数 第四个参数fp:文件指针 返回值 返回读/写的对象数 读写一个二进制数组 float data[10]; fwrite(data, sizeof(float), 4, fp); 读写一个结构 struct{ int a; int b; }item; fwrite(item, sizeof(item), 1, fp); 格式化输出函数 int printf(const char* format, ....); int fprintf(FILE *fp, const char *format, ...); int sprintf(char *buf, const char *format, ...); printf将格式化数据写到标准输出 fprintf写至指定的流 sprintf写入数
您可能关注的文档
最近下载
- 特级教师刘德武小数的意义.ppt VIP
- 2026年职高辽交单招试题及答案.doc
- 2026年春学期人教版初中历史八年级下册教学计划.docx VIP
- 最新2020年春二年级数学下册 第2单元 表内除法(一)第6课时 除法(2)课堂作业 .doc VIP
- 第四章第三节 服装配色基本规律(课件)-《服装设计基础》同步教学(高教版.服装设计与工艺专业).pptx VIP
- 2025年下半年中小学教师资格考试语文学科知识与教学能力真题(高级中学).docx VIP
- 《故宫IP联名文创产品开发与销售总结》_国潮文创产品经理.docx
- 2025年贵州省中考英语试卷真题(含答案详解).pdf
- [全]学生硬笔作品纸-古诗词书法比赛用A4纸打印模板.docx VIP
- 刘德武《小数的意义》课堂实录名师教案.pdf VIP
原创力文档

文档评论(0)