c语言中的read和write函数
2016-05-27 20:32
211 查看
读函数read
ssize_t read(int fd,void *buf,size_t nbyte)
read函数是负责从fd中读取内容.成功时,read返回实际所读的字节数,如果返回的值是0,表示已经读到文件的结束了.
小于0表示出现了错误.如果错误为EINTR说明读是由中断引起的, 如果是ECONNREST表示网络连接出了问题.
写函数write
ssize_t write(int fd,const void *buf,size_t nbytes)
write函数将buf中的nbytes字节内容写入文件描述符fd.成功时返回写的字节数.失败时返回-1. 并设置errno变量. 在网络程序中,当我们向套接字文件描述符写时有俩种可能.
1)write的返回值大于0,表示写了部分或者是全部的数据.
2)返回的值小于0,此时出现了错误.我们要根据错误类型来处理. 如果错误为EINTR表示在写的时候出现了中断错误.
如果为EPIPE表示网络连接出现了问题(对方已经关闭了连接).
ssize_t read(int fd,void *buf,size_t nbyte)
read函数是负责从fd中读取内容.成功时,read返回实际所读的字节数,如果返回的值是0,表示已经读到文件的结束了.
小于0表示出现了错误.如果错误为EINTR说明读是由中断引起的, 如果是ECONNREST表示网络连接出了问题.
写函数write
ssize_t write(int fd,const void *buf,size_t nbytes)
write函数将buf中的nbytes字节内容写入文件描述符fd.成功时返回写的字节数.失败时返回-1. 并设置errno变量. 在网络程序中,当我们向套接字文件描述符写时有俩种可能.
1)write的返回值大于0,表示写了部分或者是全部的数据.
2)返回的值小于0,此时出现了错误.我们要根据错误类型来处理. 如果错误为EINTR表示在写的时候出现了中断错误.
如果为EPIPE表示网络连接出现了问题(对方已经关闭了连接).
相关文章推荐
- ROS_Kinetic_12 ROS程序基础Eclipse_C++(三)usb camera
- ROS_Kinetic_12 ROS程序基础Eclipse_C++(三)usb camera
- ROS_Kinetic_12 ROS程序基础Eclipse_C++(三)usb camera
- POJ 2686-Traveling by Stagecoach(DAG图-状态压缩DP)
- 1021. 个位数统计 (15)
- 第十二周【形状类族的中的纯虚函数】
- C++头文件一览
- C++ char数组
- c++统计程序运行时间的方法
- C++实现base64编码
- 从事C和C++开发者快速学python(一)
- 今天对二级指针的深入理解
- L1-006. 连续因子(C++)
- C++ 对象的内存布局
- C/C++中获取数组的长度
- c++ 优先队列
- MFC快速入门-hello world
- C语言宏定义
- EXE和DLL互相调用
- 通过多播实现局域网上线用户列表 c++实现