问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

Windows Socket和Linux Socket编程的区别 ZZ

发布网友 发布时间:2022-05-05 11:08

我来回答

1个回答

热心网友 时间:2022-06-27 10:35

下面大概分几个方面进行罗列:
Linux要包含

[cpp]
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <arpa/inet.h>
等头文件,而windows下则是包含
[cpp]
#include <winsock.h>


Linux中socket为整形,Windows中为一个SOCKET。
Linux中关闭socket为close,Windows中为closesocket。
Linux中有变量socklen_t,Windows中直接为int。
因为linux中的socket与普通的fd一样,所以可以在TCP的socket中,发送与接收数据时,直接使用read和write。而windows只能使用recv和send。
设置socet选项,比如设置socket为非阻塞的。Linux下为

[cpp]
flag = fcntl (fd, F_GETFL);
fcntl (fd, F_SETFL, flag | O_NONBLOCK);
,Windows下为
[cpp]
flag = 1;
ioctlsocket (fd, FIONBIO, (unsigned long *) &flag);

当非阻塞socket的TCP连接正在进行时,Linux的错误号为EINPROGRESS,Windows的错误号为WSAEWOULDBLOCK。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
古天乐的资料!!! 胆结石可以喝柠檬蜂蜜水吗 柠檬对结石有什么作用 胆结石可以吃柠檬吗 江西有哪些风景 行政处罚对象能不能是分公司 分公司是否能作为被行政处罚的对象 分享20份亚马逊运营过程中常用邮件回复模板 2024年上半年自考报名时间 22年辽宁省自考延期怎么退费 齐河大清河塔为什么不能进? 长绒棉被和蚕丝被哪个更好 长绒棉被和蚕丝被哪个更好? 长绒棉是什么样的,就是有长毛的棉布吗?长绒棉床品有什么优缺点呢? “安徽五大名山”是哪几座山? 帮我找一些关于黄山的资料!!! 好可以追加悬赏分!!!!!!!!!!!!!!!快点回答!!! 微信下载PDF,要么下载不下来,要么打开是另一个Word文件,这是啥毛病? 微信在电脑上为什么总是下载不了别人发的PDF,且出现感叹号? 买了个qq号,用手机挂常用IP是要同一个wifi吗? 我买了个7位无保QQ号 怎么挂成常用IP 怎么样设置自己QQ的常用IP段? 上海PSP3000价格问题 上海哪里卖测血氧的仪器? 上海地区未破解的PS3多少钱 香泉苑怎么样?好不好?值不值得买? 德国美乐宝和中国美乐宝有直接关系吗? 美团众包和乐跑的公司在上海吗? 上海画乐宝文化传媒有限公司怎么样? 有人听过、用过魔介吗?感觉怎么样?- 问一问 上海乐宝信息技术有限公司怎么样? 晏城大清河里,有一个塔,那个塔叫什么名字? 在linux系统中用c语言编写一个网络tcp主从通信的socket程序,要求发送数据包 齐河县齐州塔 基于Socket编程实现两台Linux计算机之间传输文件的程序netcp,实现命令... linux中的socket编程的问题,recv函数收到的全是0 Linux C 网络编程....使用socket通讯... 洛克王国十大呆萌宠物 股票竞价时间能买入、卖出股票吗? 洛克王国各系宠物排行榜(每系前十名) 锅烧鲤鱼是成语吗? 如何区分25hz相敏轨道电路室内外故障 火车道岔的道岔安装装置检修 铁路道岔配件安装的注意事项有哪些? 蒸花鸭蒸熊掌蒸鹿茸绕口令是什么? 佛山自考在哪里可以报名?最好可以上课的 相声里的烧花鸭 以后还有什么 想知道: 佛山市 佛山自考报名处 在哪 以单开道岔为例说明道岔跳线如何配置 根据临时需要变换道岔的什么? 贯口报菜名有哪些菜名?
  • 焦点

最新推荐

猜你喜欢

热门推荐