没有合适的资源?快使用搜索试试~ 我知道了~
不知道recv大小时如何设置buffer大小接收图像
需积分: 45 15 下载量 104 浏览量
2017-03-27
20:40:52
上传
评论
收藏 2KB TXT 举报
温馨提示
关于recv函数buffer大小的设置,当不知道数据长度时如何设置buffer长度,以及buffer长度对实际接收长度的影响。
资源推荐
资源详情
资源评论
int ret,pklen, FileLength;
unsigned char *m_buf=NULL;
SOCKET sclient;
struct sockaddr_in server;
while(1) //这个循环用于连接服务器
{
if(connect(sclient,(struct sockaddr *)&server,sizeof(server))<0)
{
AfxMessageBox("连接失败,请检查网络!");
//continue;
break;
}
while(1) //这个循环用于接收服务器发送的数据
{
char Length[2];
ret=recv(sclient,(char *)Length,2,0); //接收数据长度
if(ret)
{
ret=Length[0];
ret=ret<<8|Length[1]; //拼接长度
m_buf=(BYTE *)new char[ret];
}
else
AfxMessageBox("数据接收失败,请检查网络或重启程序!");
while(1)//这个循环用于接收服务器发送的图像,存盘
{
pklen=0;
FileLength=0;
pklen=recv(sclient,(char *)m_buf,ret,0);
unsigned char *m_buf=NULL;
SOCKET sclient;
struct sockaddr_in server;
while(1) //这个循环用于连接服务器
{
if(connect(sclient,(struct sockaddr *)&server,sizeof(server))<0)
{
AfxMessageBox("连接失败,请检查网络!");
//continue;
break;
}
while(1) //这个循环用于接收服务器发送的数据
{
char Length[2];
ret=recv(sclient,(char *)Length,2,0); //接收数据长度
if(ret)
{
ret=Length[0];
ret=ret<<8|Length[1]; //拼接长度
m_buf=(BYTE *)new char[ret];
}
else
AfxMessageBox("数据接收失败,请检查网络或重启程序!");
while(1)//这个循环用于接收服务器发送的图像,存盘
{
pklen=0;
FileLength=0;
pklen=recv(sclient,(char *)m_buf,ret,0);
资源评论
比尔-布斯
- 粉丝: 6
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功