2、linux中read,write和recv,send的区别

本文详细介绍了recv和send函数在socket编程中的应用,包括如何通过第四个参数控制读写操作,以及这些函数与read和write函数之间的相似之处。此外,还提到了在Unix系统中如何将设备视为文件进行读取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、recvsend函数提供了和readwrite差不多的功能但是他们提供了第四个参数来控制读写操作.

int recv(int sockfd,void *buf,int len,int flags)

int send(int sockfd,void *buf,int len,int flags)

    前面的三个参数和read,write相同第四个参数能够是0或是以下的组合

_______________________________________________________________

| MSG_DONTROUTE | 不查找路由表 |

| MSG_OOB | 接受或发送带外数据 |

| MSG_PEEK | 查看数据,并不从系统缓冲区移走数据 |

| MSG_WAITALL | 等待任何数据 |

|————————————————————–|

    如果flags0则和read,write一样的操作。

2、在unix中,所有的设备都可以看成是一个文件,所以我们可以用read来读取socket数据。

参考

1】 http://apps.hi.baidu.com/share/detail/137478

2】 设置非阻塞

http://www.ajaxstu.com/Cbiancheng/107652.html

3http://blog.163.com/solylee@126/blog/static/17182315720111161368585/

4http://blog.163.com/clevertanglei900@126/blog/static/111352259201122001933162/

5http://topic.youkuaiyun.com/u/20090703/20/36925146-0f73-47fe-8a71-45ec245166ba.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值