关于基于socket的c语言图片传输

基于UDP或者TCP的文件传输,我的想法是通过图像类把图像的指针读进来,然后通过三次传输,第一次第二次传输长宽,然后在服务器端创建相应的unsignedchar指针,然后... 基于UDP或者TCP的文件传输,我的想法是通过图像类把图像的指针读进来,然后通过三次传输,第一次第二次传输长宽,然后在服务器端创建相应的unsigned char指针,然后第三次再传送客户端这边的图像指针,刚刚编程使用了UDP编程,可是失败了,sendto报错10040貌似是文件buff过大,一张图片有1M多,请大神帮我分析我这种方法可以实现图片在服务器客户端上的传输么,还是socket这些只能传输文字? 展开
 我来答
icelbja
2014-03-26 · TA获得超过138个赞
知道小有建树答主
回答量:180
采纳率:100%
帮助的人:151万
展开全部
用tcp
首先传输 文件大小len;
然后直接传输文件,
服务端发送
int sended =0
while(sended < len)
{
sended += send(SOCKET s, buf + sended,~,~);
}

客户端接受
int recived = 0
while(recived < len)
{
recived + = recv(SOCKET s,buf+ recived,~,~);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ddfb519
2014-03-21 · TA获得超过751个赞
知道小有建树答主
回答量:720
采纳率:50%
帮助的人:176万
展开全部
喂喂,UDP 和 TCP 的每个数据包是有数据大小限制的,你干嘛不分段传输,一次性传输可能会因为数据过多而导致失败,而且 UDP 不排序,不保证能接受到完整的图像数据,为啥不用 TCP ?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迅捷司鼐膊俳b9ade
2014-03-21 · TA获得超过532个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:211万
展开全部
所有的数据都是平等的,在编程方面不存在只能操作什么的情况,1M直接建立是多了点,得想办法分开来,最多一个包1K
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式