发送数据时收到以下错误。
发送:29-非法搜寻
请解释可能的原因。我是socket编程的新手。提前谢谢。
CHAR datasend[200];
DOUBLE64 fTime=0.0;
LONG32 sent_bytes=0;
while(TRUE)
{
memset(datasend,0,200);
fTime=getTime();
sprintf(datasend,"0=%.0lf ",fTime);
sent_bytes = send ( isockfd, datasend, strlen(datasend),0);
logDebug1("Pulse is %s and data bytes is %d",datasend,strlen(datasend));
if(sent_bytes <= 0)
{
logPError("send");
logTimestamp("Closing socket\n");
close(isockfd);
return NULL;
}
sleep(25);
}
答案 0 :(得分:3)
您没有解释正确的错误,因为干预logDebug1
电话。
send
返回一些&lt; = 0,可能还有errno
你可以检查logDebug1
)可能会出现问题errno
perror
来解释被破坏的errno
您要做的是检查sentBytes < 0
, perror
是否,然后根据需要打印更多调试内容。