所以我通过一个参数,我的主要是一个IP作为char *名称ipStr
。为什么我从sendto()中获得“无效参数”?
然后我初始化的变量调用sendto()
之前举行它的长度:
sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
char buffer[8];
socklen_t ipLen = sizeof(ipStr);
res = sendto(sock, buffer, sizeof(buffer), 0,
(struct sockaddr*) &ipStr, ipLen);
但我仍然得到Invalid argument
作为一个返回的错误。
我没有得到g ++编译错误,所以我不知道问题出在哪里。
编辑
我发现我ipLen
之前没有删除sizeof
,改变上述但还是收到Invalid argument
。
套接字是否正确返回?什么是ipStr设置? – Joe
是'sock'正确返回,我不知道ipStr设置为什么意思。 – xeon48
ipstr可能是你的“无效论点”,但我没有看到它的代码,只是你声称。让我们看看能够证明您的问题的完整代码。 – Joe