socket编程 c语言
客户端:for(i=0;i<h*3;i++){recv(sock,t,w,0);recvbuff+=w;recvbuff=(unsignedchar*)t;}服务器端:f...
客户端:
for (i = 0; i < h*3; i++)
{
recv(sock,t,w,0);
recvbuff += w;
recvbuff = (unsigned char*)t;
}
服务器端:
for(i = 0;i < h*3;i++){
temp =temp + w;
justCpy((unsigned char*)ap,(unsigned char*)temp,w);
printf("%d ",i);
if(SOCKET_ERROR==send(m_socket,(char*)ap,w,0))
printf(" %d %d ",GetLastError(),i);
printf("%d ",i);
}
temp和recvbuff都是一个h*w*3长度的指针(实际为unsigned char 的图像指针,)我将图像分h*3(三个通道)次传送,每次传一个宽度的字符,ap和t是一个w长度的指针用来存储每次传送的字符,justCpy是我自己写的函数 实现将后者指针的w长度的内容拷贝到前面的指针,都但是send函数停在55次左右也不是不响应 就是光标在闪,求大神
感觉就是send端被暂停了,而且当我把接收端关闭之后,send端会显示所有的i(不知道是不是传送过去了) 展开
for (i = 0; i < h*3; i++)
{
recv(sock,t,w,0);
recvbuff += w;
recvbuff = (unsigned char*)t;
}
服务器端:
for(i = 0;i < h*3;i++){
temp =temp + w;
justCpy((unsigned char*)ap,(unsigned char*)temp,w);
printf("%d ",i);
if(SOCKET_ERROR==send(m_socket,(char*)ap,w,0))
printf(" %d %d ",GetLastError(),i);
printf("%d ",i);
}
temp和recvbuff都是一个h*w*3长度的指针(实际为unsigned char 的图像指针,)我将图像分h*3(三个通道)次传送,每次传一个宽度的字符,ap和t是一个w长度的指针用来存储每次传送的字符,justCpy是我自己写的函数 实现将后者指针的w长度的内容拷贝到前面的指针,都但是send函数停在55次左右也不是不响应 就是光标在闪,求大神
感觉就是send端被暂停了,而且当我把接收端关闭之后,send端会显示所有的i(不知道是不是传送过去了) 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询