我是套接字编程的新手,以便测试某些情况,我正在使用 java 端客户端通过套接字发送整数数据,并且我想在 cpp 的服务器端接收该数据。
我在客户端(java)上的代码看起来像
out=new DataOutputStream(s.getOutputStream());
ar=1;
le=1;
out.writeInt(ar);
out.flush();
out.writeInt(le);
out.flush();
我在 cpp 中使用 recv 函数来接收这些数据。cpp端的代码看起来像
if (int(recv(acceptFD, &number, sizeof(int), 0)) != sizeof(int))
{
ALOGE ("error reading on socket: number of Args: %d,reutrned value =%d\n",number);
return;
}
for (int i = 0; i < number; i++)
{
int len;
if (recv(acceptFD, &len, sizeof(int), 0) != sizeof(int))
{
ALOGE ("error reading on socket: Len of Args: expected length :%d\n",len);
freeDebugCallbackArgs(i, args);
return;
}
并将日志显示为
E/RILC(235):套接字读取错误:Args 数:16777216,返回值 =-1073741824 E/RILC(235):套接字读取错误:Args 长度:预期长度:1075093557
如果有人对此发表答案,那将是一个很大的帮助。谢谢