CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

关于SOCKET的简单问题

楼主evilstar(大宝)2002-04-18 10:06:22 在 VC/MFC / 基础类 提问

我用send和recv的时候有个疑问,传送数据的时候接收方怎样知道数据传送完了,  
  应该closesocket了呢?还想问问:发送方如果closesocket接收方会怎样呢?  
  是接收完全部数据才返回error还是没接收完数据马上返回呢?  
  --------------------------------------------------------在线等待答复 问题点数:20、回复次数:3Top

1 楼f_ky(毛蛋哥哥)回复于 2002-04-18 10:11:41 得分 0

recv出现超时的时候才会返回错误,恐怕你得自己send一个结束标志了。Top

2 楼nickypan(Nicky)回复于 2002-04-18 10:12:32 得分 10

发送方发完数据时应该closesocket,这样接收方那边的recv会返回一个0,这时接收方就可以closesocket了!Top

3 楼dylanwolf()回复于 2002-04-18 10:17:49 得分 10

接受方一般用一循环调用   int   i=recv()   读取数据,如果函数返回值i<0,   则发送方已经close.  
   
  你可以先发送一个整型的变量,该变量为你要发送数据的长度   length,   接受方先接受该长度数据   length,   然后判断是否已接受全部数据.Top

相关问题

  • 很简单的socket问题
  • java 的socket问题~~简单~~
  • socket的简单问题!
  • 简单的socket连接
  • 很简单的socket问题
  • 请教关于SOCKET的简单问题
  • 关于Socket的一个简单问题
  • 一个简单的socket问题.
  • 100分求简单socket问题
  • 100分求简单socket问题

关键词

  • 数据
  • closesocket
  • 接收方
  • 返回
  • recv
  • 传送
  • 接收
  • 时候
  • 发送
  • 应该

得分解答快速导航

  • 帖主:evilstar
  • nickypan
  • dylanwolf

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo