linux中的IO函数

1)open函数:以特定的方式打开一个文件;

                头文件:sys/type.h  sys/stat.h   fcntl.h

                返回值:错误则返回-1,正确则返回文件描述符(int类型,范围为3~1023,文件的标号)

                函数原型:int open(const  char *pathname,int flags) 

                                    int open(const char *pathname,int flags,mode_t mode)

               flag必选项:O_WRONLY,O_RDONLY,O_RDWR;

                flag可选项:O_APPEND(追加),O_CREAT(创建,需要指定文件的权限,创建的文件权限=设定的权限-                                           umask),O_EXCL(如果文件存在且指定O_CREAT,则出错), O_TRUNC(文件存在截断为0),O_NONBLOCK;

 2)close函数:关闭文件

                头文件:unistd.h

                返回值:错误(-1),正确(0);

                函数原型:int close(int fd);

                fd:文件描述符;

 3)read函数:从文件中读取数据到指定数据缓冲区

                 头文件:unistd.h

                 返回值:文件读完(0),读取的字符串(>0),读取失败(-1)

                 函数原型:ssize_t  read(int fd,void  *buffer,size_t count);

                  fd:文件描述符;buffer:数据缓存区;count:读取的数据大小;

 4)write函数:将数据到指定文件中

                 头文件:unistd.h

                 返回值:写入的数据大仙(>0),写入失败(-1)

                 函数原型:ssize_t  read(int fd,const void  *buffer,size_t count);

                  fd:文件描述符;buffer:待写入的数据;count:读取的数据大小;

5)lseek函数:修改文件的读写位置,应用于获取文件长度,拓展文件空间(其后必须接一个写入函数)

                头文件:sys/type.h  unistd.h

                返回:如果成功返回距离起始位置的偏移量,失败返回-1;

                函数原型:off_t lseek(int  fd,off_t offset,int whence);

               fd:文件描述符,offset:偏移量,whence:

                                                                                   SEEK_SET(偏移到offset地方,相对于文件头)

                                                                                   SEEK_CUR(偏移到当前位置+offset)

                                                                                   SEEK_END(偏移到文件尾+offset);       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值