Hi,欢迎来到中国嵌入式培训高端品牌 - 华清远见嵌入式学院<北京总部官网>,专注嵌入式工程师培养13年!
当前位置: > 嵌入式学院 > 嵌入式学习 > 讲师博文 > 标准IO函数
标准IO函数
时间:2017-09-13作者:华清远见

【1】int fflush(FILE *stream);

功能:强制刷新一个流

返回:成功 0,  失败 EOF

注意:fflush(stdin)Gcc不支持

【2】stdin stdout stderr

刷新条件:满、fflush、进程结束、‘\n’

【3】FILE *fopen(cost char *path, const char *mode);

功能:打开一个文件,获得文件的流

参数:<path> 路径,字符串首地址  

     <mode> 模式,字符串首地址

返回:成功返回文件流指针,失败返回NULL

r 只读 r+ 可读可写(从头覆盖) //不创建

w 只写(清空) w+ 可读可写(清空) //文件不存在则创建

a 只写(追加) a+ 可读可写(追加) //文件不存在则创建

【4】 int fputc(int c, FILE *stream);

【5】 int fclose(FILE *fp);

功能:关闭一个流。

参数:<stream>文件流指针

【6】int fgetc(FILE *stream);

功能:从流中读取一个字符。

注意:读完一个字符是要接着读第二个字符的      

【7】int fprintf(FILE *stream, const char *format, ...);

功能:将打印的内容生成字符串写入一个流中。

参数:<stream>文件流指针;后面与printf一样

返回:输出数据的字节数

【8】int fputs(const char *s, FILE *stream);

功能:向一个流中写入s所指向的字符串。

返回:输出数据的字节数

【*】char *fgets(char *s, int size, FILE *stream);

功能:从一个流中读取size大小的字符,写入s所指向的字符串。

参数:<s> 字符串首地址;

 <size> 读取的字节大小

返回:字符串的首地址

注意:最多读取size-1 个字符,遇到'\n'结束

【10】size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

功能:将ptr所指向的数据单元写入文件中

参数: <ptr> 数据来源

<size>  每单元数据的字节大小

<nmemb> 单元数据的次数

<stream>文件流指针

返回:成功获取的单元次数:1 ~ nmemb。  

 不足一单元数据,或失败:0

【11】size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

功能:从文件中读取数据单元

参数: <ptr>   数据保存的位置

<size>  读取单元数据的大小

<nmemb> 读取单元数据的个数

返回:成功获取的单元次数:1 ~ nmemb。

不足一单元数据,或失败:0

【12】int fseek(FILE *stream, long offset, int whence);

功能:定位流的读写位置

参数:<offset>  偏移量  

     <whence>  SEEK_SET 文件开始(在第一个字符)                                                                             

SEEK_CUR 当前 

SEEK_END 文件末尾 (最后一个字符的下一个)

返回:成功返回当前位置 失败-1

注意:"a+" 时使用fseek无效

【13】void rewind(FILE *stream);

<==> 

fseek(fp,0, SEEK_SET);

【14】long ftell(FILE *stream);

  功能:获取流当前的读写位置

返回:成功  当前的读写位置

     失败  -1

注意:起始位置为0;

【15】int feof(FILE *stream);

功能:判断一个文件是否到文件结尾

返回:结束非0, 没有结束0

【16】void clearerr(FILE *stream);

功能:清除文件结束标识,清除错误信息


发表评论

全国咨询电话:400-611-6270,双休日及节假日请致电值班手机:15010390966

在线咨询: 曹老师QQ(3337544669), 徐老师QQ(1462495461), 刘老师 QQ(3108687497)

企业培训洽谈专线:010-82600901,院校合作洽谈专线:010-82600350,在线咨询:QQ(248856300)

Copyright 2004-2017 华清远见教育集团 版权所有 ,沪ICP备10038863号,京公海网安备110108001117号