问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

LINUX网络编程TCP服务器 客户端 有乱码怎么解决?

发布网友 发布时间:2022-04-25 23:50

我来回答

1个回答

热心网友 时间:2022-05-07 18:57

解决办法:
1.在客户端n=read(socketfd,buff,1023);代码之前加上memset(buff,0,sizeof(buff));,这是保证收到较短数据(使用TCP你不能保证每次接收的数据和发送的数据时等长的),打印也是正确的;
2.将客户端buff[n+1]+='\0';修改为buff[n]='\0';,这是因为n是下标,已经是最后一个位置了;
3.将服务器端buff[n+1]+='\0';修改为buff[n]='\0';,这是因为n是下标,已经是最后一个位置了,而且和第2)一样,那个加号也要去掉,应该是笔误吧;
4.最大的问题,将服务器端write(connectfd,buff,1023);,你怎么能够保证收到1023个字符呢?也应该将while中条件移出作为WHILE中的一条语句,而且加上前面所述的memset语句,而将这里的write(connectfd,buff,1023);修改为write(connectfd,buff,strlen(buff))。
祝共同进步!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
故意损毁文物罪在哪些条件下成立 哪些条件会构成故意损毁文物罪 故意损毁名胜古迹罪的构成要件有哪些 故意损毁文物罪构成要素? 20年前买房纠纷怎么处理 华为p40怎么克隆qq账号? 废旧笔芯属于什么垃圾? 三岁是什么敏感期 输卵管梗阻的原因有哪些 大姨妈走后多久能同房 请问大佬有富士施乐p218b打印机驱动 V1.0.1.2 绿色版软件免费百度云资源吗 如何Virtual Pdf Printer【PDF虚拟打印机软件】 V1.5 绿色免费版使用 哪个软件可以方便地打印商品价格签? BArTender在打印标签页面出现绿色的小框怎么去掉? 劳务派遣 和第三方有什么区别 鉴什么合同对我好 劳务派遣属于第三方吗? 属于第三方劳务派遣工都需要什么资料证明 第三方劳务公司 第三方劳务派遣在单位辞职,在找工作怎么写简历?工作经历怎么表述? 我与单位签订了第三方劳务派遣合同, 关于第三方劳务派遣工资,福利 第三方合同和派遣合同区别 第三方派遣合同是什么意思?情况如下 第三方劳务派遣是什么 我今年刚毕业 现在要与第三方人才服务公司签订劳务派遣合同 要注意什么 分享下你有哪些好看的3D动漫推荐? 女主和伙伴因为念错了咒语回到从前魔王当老师的动漫叫什么? 这是哪一部动漫里的 求名字 跪求这位动漫女生!谢谢! 公务员报班要多少钱吗 能否介绍一款免费的PDF虚拟打印软件,轻度使用而已,不想要太复杂的! 哪些canon 打印机支持双面打印 追踪linux tcp/ip代码运行 具体哪个2.6版本 条码打印“没有数据源被设置为序列化” 佳能ir2318l双面打印 TSE工业打印机B-462-R用的是什么打印软件打印条码?有吗? linux下tcp的服务器端怎么区别连接的客户端 推荐一款佳能激光打印机,可以双面打印的 佳博热敏打印机,打印不出来,设备和打印机中取消所有文档上面的图标就是... 支持双面打印的打印机那一种性价比最高? 象山2023年拆迁计划- 问一问 佳能打印机双面打印的问题。 自然人的有效身份证件包括哪些 人口普查家人都通过,我的身份信息审核不通过是什么问题? 自然人的个人信息包括哪些方面? 佳能2422D支持双面打印吗,怎样设置自动双面打印 java程序员面试时被问到:如何在j2ee项目中处理高并发量访问? 该怎么回 ... 中华人民共和国民法典规定处理自然人个人信息的应当遵循什么原则_百度... 佳能2320怎么设置双面打印 扣缴客户端中,身份验证状态有哪些?有什么含义?