Sockets UDP:函数发送结果失败的原因

Sockets UDP:函数发送结果失败的原因,sockets,udp,client-server,Sockets,Udp,Client Server,我正在尝试使用UDP协议将消息从客户端发送到服务器。 但是 函数发送(sockfd、buf、strlen(buf)、0) 我使用它来发送缓冲返回-1,任何时候我调用它 在func的描述中,我阅读了有关结果的内容,我知道结果是否为0或以下-函数完成时是否有错误,以及结果是否为>0,函数是否成功完成 例如: 通话结果 发送(套接字,“1.2.3.4”,7,0)将为-1 我遗漏了什么?您能否显示如何打开套接字,即此变量,它是如何构造的?如果您使用的是UDP,您可能需要sendto。如果要使用send

我正在尝试使用
UDP协议
将消息从客户端发送到服务器。 但是

函数发送(sockfd、buf、strlen(buf)、0)
我使用它来发送缓冲返回-1,任何时候我调用它

func
的描述中,我阅读了有关结果的内容,我知道结果是否为0或以下-函数完成时是否有错误,以及结果是否为>0,函数是否成功完成

例如: 通话结果

发送(套接字,“1.2.3.4”,7,0)
将为-1


我遗漏了什么?

您能否显示如何打开
套接字
,即此变量,它是如何构造的?如果您使用的是
UDP
,您可能需要
sendto
。如果要使用
send
,必须在socket上调用
connect
。int sock=socket(AF_INET,sock_DGRAM,0);//在调用“Sock”> 0之后创建SOCKET,所以它将是成功的“如果您想使用发送,必须在套接字上调用连接。(Cnututar)”,我没有考虑这个,谢谢Cnututar。
function send(sockfd, buf, strlen(buf), 0) 
<socket.h>