UDP 网络实现的 C 中 send() 和 sendTo() 之间的区别

difference between send() and sendTo() in C for a UDP network implementation

我正在尝试在客户端和服务器之间实现 UDP 网络,但在许多实现中,它们使用 send()sendTo() 我尝试查看手册页但我没有'除了 sendTo() 接受更多参数这使得它与 send() 相比看起来相当无用之外,我并没有真正理解其中的区别。如果您能澄清此事,我将很高兴听到:)

sendto 函数通常用于 UDP 套接字。由于 UDP 是无连接的,此功能允许您指定每个传出数据包发送到的 IP 和端口。

但是,如果您首先使用 connect,也可以使用 sendconnect 函数可用于为使用send 发送的所有数据包指定目标IP 和端口。它还将您收到的数据包限制为仅来自 IP/port 的数据包。可以多次调用 connect 函数来更改关联的遥控器 IP/port,或删除关联。

总的来说,我建议坚持使用 sendto,因为它可以让您更灵活地选择收件人。