IO函数总结.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IO函数总结

一、I/O 1、文件i/o 1)打开 int open(char *path, int flags, mode_t mode) Path:路径,flags:标志位:O_RDONLY、O_WDONLY、O_RDWR、 O_CREAT:要加第三个参数 O_EXCL:检测要创建的文件是否存在 O_TRUNC:若文件已存在,则先删除原来数据再打开 O_APPEND:一追加方式打开文件 Mode:权限 返回值: 成功:文件描述符 失败:-1 2)读写 int read(int fd, void *buf, size_t size) Fd:文件描述符0、1、2 Buf:存放从文件中读取的内容 Size:读取的内容大小 返回值: 到达文件尾:0 失败:-1 int write(int fd, void *buf, size_t size) Fd:文件描述符 Buf:将buf中的内容写入文件中 Size:写入的大小 返回值:成功:已写字节个数 失败:-1 3)定位 off_t lseek(int fd, off_t offset, int whence) Offse:偏移量,大于0后移,小于0前移 Whence:当前位置 SEEK_SET、SEEK_CUR、SEEK_END 返回值: 成功:文件的当前位移 失败:-1 4)关闭 int close(int fd) 返回值: 成功:0 失败:-1 2、标准i/o 1)打开 FILE * fopen(char *path, char *type) Path:文件路径 type:字符串型的打开方式:r(+)、w(+)、a(+)等 返回值: 成功:文件流 失败:NULL FILE *freopen(char *path, char *type, FILE *stream) :重定向打开 Path:打开到的路径 Type:打开方式 Stream:文件流 返回值: 成功:文件流 失败:NULL FILE *fdopen(int fd, char *type) :将文件描述符转化为文件流 fd:文件描述符 type:文件流 返回值: 成功:文件流 失败:NULL 2)读写 int fgetc(FILE *stream):从HYPERLINK /view/5019859.htm文件指针stream指向的文件中读取一个字符, 读取一个字节后,光标位置后移一个字节。 返回值: 成功:读到的字符的ASCII 失败或到文件尾:EOF int fputc(int c, FILE *stream):将字符写到文件指针fp所指向的文件的当前写指 针的位置。 c:为要写入的字符 Stream:文件流 返回值: 成功:写入字符的ASCII 失败:EOF int feof(FILE *stream):判断文件是否结束,可用于二进制文件 返回值: 文件结束:非0 否则:0 文件结束符只能被clearerr()清除。 int ferror(FILE *stream):根据出错标志判断是否结束 char *fgets(char *buf, size_t size, FILE *stream) Buf:存放从文件中读取的内容 Size:读取大小 Stream:文件流指针 返回值: 成功:字符串 失败:NULL int fputs(char *buf, FILE *stream) Buf:存放要写入文件的内容 Stream:文件流 返回值: 成功:非负数 失败:EOF int fread(char *buf, size_t size, int count, FILE *stream):返回值为读取对象个数 Buf:存放读取内容 Size:读取大小 Count:一次读取对象个数 Stream:文件流 返回值: 成功:读取的对象个数 失败:0 int fwrite(char *buf, size_t size, int count, FILE *stream):返回值为写入对象个数 Buf:存放要写入的内容 Size:写入大小 Count:一次写入对象个数 Stream:文件流 返回值: 成功:写的对象个数 失败:0 3)缓存 void setbuf(FILE *fp, char *buf):更改缓存类型,只能设置无缓存和全缓存。 fp:文件流 buf:参数buf必须指向一个长度为BUFSIZ(定义在stdio.h头文件中)的缓冲区 void setvbuf(FILE *fp, char *buf, int cmd, size_t size):全缓存、行缓存、无缓 存都可设置 stream :文件流HYPERLINK /view/1

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档