typedef struct Syn{
int id;
int array[7];
float data[1024*32];
}syn;
用cvi的ClientTCPWrite 发送
vc用 <afxsock.h> recv 接受
结构id 和 array[] 每次都正确,data[]大概1024*2的数据正确 后面的很不稳定,不知道是为什么. 编译器? 还是数据量太大原因?大家有没有遇到过这种问题啊?
int id;
int array[7];
float data[1024*32];
}syn;
用cvi的ClientTCPWrite 发送
vc用 <afxsock.h> recv 接受
结构id 和 array[] 每次都正确,data[]大概1024*2的数据正确 后面的很不稳定,不知道是为什么. 编译器? 还是数据量太大原因?大家有没有遇到过这种问题啊?
不过最好还是分成多个包来发。
当报文比较长,而网络又不是很通顺时,send可能一次发送不完,
这样试试, 同时接收的时候也应该判断是否已经收完整
int len =0;
while(len < sizeof(syn))
{
int sendlen = send(so, ((char *)&syn)+len, sizeof(syn)-len);
if (sendLen < 0)
break;
else
len += sendLen;
}